Как include('./code.php');
Работа? Я понимаю, что это эквивалентно тому, что код «вставлен» непосредственно там, где это происходит, но, например:
Если у меня есть две страницы, page1.php
и page2.php
, из которых мне нужно будет манипулировать различными переменными и функциями в ./code.php
, include()
создает копию ./code.php
или делает это по существу ссылка на фактическую страницу ./code.php
?
См. Руководство .
Если вы include
текстовый файл, он будет отображаться как текст в документе.
include
не ведет себя как copy-paste:
test.php
<?php echo '**'; $test = 'test'; include 'test.txt'; echo '**'; ?>
test.txt
echo $test;
Вышеприведенный пример выводит:
**echo $test;**
Если вы собираетесь включать файлы PHP, вам все равно нужно иметь теги PHP <?php
и ?>
.
Кроме того, обычно круглые скобки не помещаются после include
, например:
include 'test.php';
В основном, когда интерпретатор попадает в include 'foo.php';
, он открывает указанный файл, считывает все его содержимое, заменяет бит «include» кодом из другого файла и продолжает интерпретировать:
<?php echo "hello"; include('foo.php'); echo "world";
в<?php echo "hello"; include('foo.php'); echo "world";
становится (теоретическим)
<?php echo "hello"; ?> {CONTENT OF foo.php} <?php echo "world";
Однако все это происходит только в памяти, а не на диске. Файлы не изменены или что-то еще.
Это зависит от того, как вы включаете файл code.php
. Если вы включите файл code.php в page1.php, а затем page2.php, то у вас будет доступ к его варам, и он будет эффективно просто «копировать и вставлять» (beaware, который просто используется, чтобы упростить его понимание, поскольку фактическое динамика этого объясняется выше) файл, однако, если вы ссылаетесь как:
[code.php] include('page1.php'); include('page2.php');
в[code.php] include('page1.php'); include('page2.php');
Тогда code.php будет иметь доступ ко всем переменным в файле page1.php, но:
Поэтому для того, чтобы inherit
funcitonality of code.php, вы не должны делать как page1.php
и page2.php
что-то вроде:
[page1.php] include('code.php'); [page2.php] include('code.php');
в[page1.php] include('code.php'); [page2.php] include('code.php');
Тогда он будет работать так, как вы ожидаете. Так что просто что-то запомнить.
include('./code.php'); // The Same As Pasting The Code From Code.PHP.
Он не будет перенаправлен на Code.php в любом случае.