Написание PHP в <head>

Правильно ли хранить переменные / значения PHP внутри <head> ? Существуют ли какие-либо недостатки или преимущества для написания PHP с HTML в этом формате? Это даже имеет значение?

Я пробовал следующий код в качестве прямого ввода через W3C Validator :

 <!DOCTYPE html> <html> <head> <title>PHP Head Test</title> <?php $data; ?> </head> </html> 

И я получаю 1 ошибку:

 Line 5, Column 4: Saw <?. Probable cause: Attempt to use an XML processing instruction in HTML. (XML processing instructions are not supported in HTML.) <?php $data; ?> 

Но я предполагаю, что это потому, что он .html файл .html котором есть PHP- код.

Я планирую использовать PHP для хранения предварительно обработанных данных MySQL в переменной, используемой в Javascript. Является ли <head> правильным местом для хранения этих значений?

ПРИМЕЧАНИЕ . Я не пытаюсь распечатать данные в голове, это было бы глупо. Я прошу хранить предварительно обработанные данные от MySQL до PHP (для использования в Javascript) в <head> .

Нет, хранение переменных PHP в голове – это не правильный способ сделать это. Фактически, когда вы это делаете, ваши переменные НЕ хранятся в голове, PHP – серверная, HTML / CSS / Javascript – клиентская.

Вы хотите сохранить переменные до того, как будет выведен любой HTML-код.

Однако, если вы сделаете что-то вроде этого:

 <head> <title>PHP Head Test</title> <?php $data; ?> </head> 

На самом деле это ничего не делает, если вы хотите отобразить его, вы должны использовать эхо. Этот код ничего не делает, кроме объявления $ data, если он не был объявлен заранее.

Как правило, вы должны иметь большую часть своего кода PHP из своего HTML-файла, они должны быть в совершенно разных файлах, а PHP-код должен включать HTML-файл. В этом случае PHP-код, который вы помещаете в файл HTML, будет иметь доступ ко всем переменным PHP, которые были доступны в файле, где он был включен.

Я планирую использовать PHP для хранения предварительно обработанных данных MySQL в переменной, используемой в Javascript. Правильное место для хранения этих значений?

просто сделайте что-нибудь подобное;

 <script> function Myfunction() { var myVariableGeneratedByPhp = <?php echo $data; ?>; // use your variable here } </script> 

Вам нужно будет повторить эту переменную следующим образом:

  <?php echo $data; ?> 

Он действительно используется, но не для большого скрипта. После этого будет сложно отлаживать. beIt может использоваться, если вы хотите создать динамический тег, например, он вам понадобится.

Но вы можете печатать только данные:

 <?php $data; ?> 

должно быть :

 <?php echo $data; ?>