Сохранение переменных PHP в HTML-коде - PullRequest
0 голосов
/ 05 сентября 2011

если у меня есть что-то вроде ниже (очень простое, но я надеюсь, вы понимаете, о чем я)

.
. 
html code
.
.
<?php
$string=true;
.
.
?>
.
.
more html

.
.
<?php
if ($string)
.
.
?>

Если страница не была выведена, будет ли значение $string по-прежнему доступно изпредыдущий <?php или его нужно настроить заново?

Ответы [ 4 ]

5 голосов
/ 05 сентября 2011

Короткий ответ ... да, это будет.

Вы можете себе представить, что все ваши блоки PHP едины, насколько переменная область видимости идет.Все переменные, объявленные в любых включенных файлах, также будут вам доступны.Эти переменные находятся в глобальной области действия .

1 голос
/ 05 сентября 2011

Ваш вопрос немного неясен, но я предполагаю, что вы имеете в виду, как это:

<?php
$string = "some string";
?>
<html>
<head>
</head>
<body>
    <?php
       // Is $string available here?
       // yes it is.
    ?>
</body>
</html>
0 голосов
/ 05 сентября 2011

Да, глобальная область действия действует для всей страницы, даже если в середине было 100 <?php ?> блоков (при условии, конечно, что вы не изменили или не удалили его в середине кода).

Знайте это, это классический вопрос TIAS.

0 голосов
/ 05 сентября 2011

Пример (очень похожий, кстати, на пример Уильяма):

<?php

$string = 'I am a string.';

?>
<html>
<head></head>
<body>
<p><?php echo $string; ?></p>
</body>
</html>

http://codepad.org/X5W769V6

Это выводит в браузер:

<html>
<head></head>
<body>
<p>I am a string.</p>
</body>
</html>

Thisпотому что PHP предназначен для анализа внутри и через html.См. Область переменных PHP .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...