PHP глобальные переменные в файлах - PullRequest
5 голосов
/ 02 февраля 2011

Хорошо, возможно, мой мозг просто отключен, но я не могу заставить это работать.

Вот полный код:

page1.php:

<?php
    $something = "hello";
    include "Page2.php";
?>

page2.php:

<?php
    echo $something;
?>

Желаемый вывод (при переходе к Page1.php):

hello

Реальный вывод пуст. Я попытался поместить глобальное ключевое слово везде, и ничего не происходит. Я что-то упустил?

Ответы [ 4 ]

4 голосов
/ 02 февраля 2011

Я не могу повторить эту ошибку, просто попробовал это на моем локальном хосте, скопировал и вставил ваш код отсюда.Я подозреваю, что у вас есть какая-то синтаксическая ошибка.

Включите отчеты об ошибках и посмотрите, нет ли ошибок.

1 голос
/ 29 мая 2014

Я думаю, что выход идет в page2.php.Я прав?это потому, что вы выводите неустановленную переменную в page2.php, вам нужно изменить следующие данные, чтобы она работала.page1.php

<?php
include("page2.php");
echo $something;
?>

page2.php

<?php
$something="Hello";
?>

Если вы будете использовать его и перемещаться по странице 1.php, то вывод будет Hello

1 голос
/ 14 декабря 2012

Я знаю, что это поздний ответ, но я пытаюсь сделать что-то подобное.Прежде всего, когда вы повторяете что-то, вы все равно должны поместить это в "".Php распознает его как переменную, если вы введете $.

Во-вторых, вы включаете page2.php в page1.Фантастически, но page2 не распознает $ что-то.Теперь, если вы сделаете это по-другому, объявите $ что-то на странице 2, а затем вызовите его со страницы 1 после включения, оно запустится.

Изменение переменной потребует чего-то еще ...

0 голосов
/ 06 декабря 2011

У меня была похожая проблема при работе на локальном компьютере (Windows), где значения массива не следовали за включением в том же процессе.

После переключения пути включения с http://localhost/www/example.php на C:/www/example.php, теперь он работает нормально.

...