1) Да, это функция PHP. Но это не первый раз, когда вызывается функция. Первый раз: echo getDBData();
.
2) Функция должна быть определена в текущем файле PHP или любом включенном / требуемом файле PHP. PHP не будет искать определение вне этого. Чтобы этот фрагмент работал, в верхней части «html-файла» (который на самом деле должен был быть PHP-файл), вероятно, будет строка, подобная этой: <?php require('data.php'); ?>
. Но тогда это будет отражать вывод ... так что, возможно, будет проще скопировать и вставить определение функции в этот файл? Думаю, этот фрагмент требует некоторой работы.
3) Прежде всего, этот вызов getDBData
является первым и единственным вызовом функции javascript с таким именем. Функция getDBData javascript передает любой параметр, который она получает, в эту вещь, выглядящую обещанием jquery (готово). Эта функция ожидает параметр, который является функцией. И функция, предоставленная функции done (), получит несколько параметров, если вы решите их принять. В этом случае передаваемая функция примет первый параметр, который представляет собой данные, полученные из запроса AJAX. Кто бы ни написал этот код, он вдумчиво решил назвать этот параметр «данными», но любое произвольное имя было бы допустимым.
4) Вы правы, оно нигде не используется во фрагменте.
5) Потому что тот, кто написал это, хотел, чтобы код был настолько запутанным, насколько это возможно? Мы можем только строить догадки. Я имею в виду, что они решили включить jquery для выполнения простого AJAX-запроса. Можем ли мы ожидать от автора какого-либо смысла? А если серьезно, нет необходимости использовать одно и то же имя для обоих.