Как подключать php-файлы и зачем это вообще нужно

Содержание:

Разбор полетов

В большинстве задач для которых используется — front-end или основной веб-сервер, и высокая нагрузка на частое явление. Пропуская способность вашего сервера должны быть максимально возможная.

Измерение пропускной способности

Для измерения пропускной способности веб-сервера используется великолепная утилита от Apache — ab. Если вы еще с ней не знакомы, то настоятельно рекомендую это сделать.

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

Код:

Результат:

Код:

Результат:

Анализ результатов

Импортирование модулей в начале файла уменьшило время одного запроса на ~23%(!) (в сравнение с импортированием непосредственно в обработчик), что весьма существенно.

Такая большая разница в результатах кроется в работе функции . Перед импортированием, обращается к алгоритму поиска абсолютного пути к запрашиваемому компоненту (алгоритм в документации node.js). Когда путь был найден, то проверяет был ли закеширован модуль, и если нет — не делает ничего сверхестественного, кроме для и форматов, и для загрузки C++ модулей.

Note: пробовал «прогревать» кеш для случая с непосредственным импортированием модулей в обработчик (перед запуском утилиты ab, модули были уже закешированы) — производительность улучшалась на 1-2%.

Как работает подключение кода PHP

Интерпретатор php «читает» код сверху вниз и слева направо, как мы читаем книги на русском языке. На исполнение от сервера ему указывается файл «index.php», а значит, чтение начинается с него. Дойдя до строчки с `include ‘test/1.php’`, интерпретатор пытается найти и исполнить это файл так, как будто он является частью «index.php». 

Перед подключением и исполнением файла «1.php» уже существует переменная `$say`, в которой содержится ‘Hello world!’. При выполнении файла «1.php», содержимое этой переменной выводится на экран и создается переменная `$test`, которая в свою очередь и выводится на экран в файле `index.php`.

Если описанное выше непонятно, советую немного поиграться с файлами `1.php` и `index.php` создавая и выводя в них переменные.

Предисловие

Не так давно проект, на котором я работаю в данный момент, начал использовать модульную систему ES2015

Я не буду заострять внимание на этой технологии JavaScript, т.к статья совсем не об этом, а о том как технология сподвигла меня к одной мысли

Как многие знают, ES2015 Modules представляют собой импортирование/экспортирование скриптов крайне схожее по синтаксису с и многими другими языками программирования. Пример:

Все, кто интересовался модулями JavaScript знают, что импортирование и экспортирование возможно только на верхнем уровне модуля (файла с кодом).

Следующий грубый пример кода вызовет ошибки:

В отличие от ES2015 Modules — в модульной системе импортирование и экспортирование возможны на любом уровне вложенности.

Аналогичный код на не вызовет ошибку:

Преимущество такого способа в том, что модули необходимые в обработчике явно импортированы внутри и не засоряют пространство имен модуля (особенно актуально, если импортируемый модуль нужен только в одном обработчике). Так же появляется возможность отложенного экспортирования данных модуля.

Основные минусы:

  1. Об отсутствии модуля вы узнаете только во время вызова соответствующего обработчика
  2. Путь к импортироемому модулю может измениться, что приведет к изменению в каждом месте импортирования (например, в вашем модуле, в различных обработчиках используется и вы решили до 4.x версии, где подключать нужно ).

3 способа подключения include

includeпуть

Первый способ подключить файл с помощью include это — если оба файла находятся в одной папке:

include( ‘test.html’);

Второй способ подключения файла с помощью include — это путь на сервере до файла. У нас есть корневая папка и мы можем получить путь(один из способов…) до неё на сервере с помощью $_SERVER, а от корневой — вы сами в состоянии прописать…

include( $_SERVER .’/здесь путь от корневой/test.html’);

Подключить по абсолютному пути файл таким образом:

include( ‘https://dwweb.ru/здесь путь от корневой/test.html’);
Должен привести к ошибке подключения include(у меня приводит):Warning: include(): https:// wrapper is disabled in the server configuration by allow_url_include=0 in url on line номер
Warning: include(путь): failed to open stream: no suitable wrapper could be found in url on line номер

Как подключить PHP из другой директории

Теперь изменим условия. Переместим файл `1.php` в папку с названием `test`, которую создадим в директории с файлом `index.php`.

Поскольку подключаемый файл находится в другой директории, для его подключения следует указать сначала папку, в которой он находится, а потом и сам файл. 

Далее изменим код в `index.php`.

<?php
    include 'test/1.php';
?>

Строка, что мы указываем после инструкции `include`, это путь к файлу. Он может быть относительный (к файлу, где используется подключение) и абсолютным (от корня файловой системы). В приложениях рекомендуются использовать относительные пути.

Между папками, файлами и другими папками в пути устанавливаются разделители. Универсальный разделитель для различных операционных систем – `/`. 

Если в папке `test` у нас была бы еще папка `lot`, в которой лежал файл `1.php`, то относительный путь выглядел бы так: ‘test/lot/1.php’.

С путями немного разобрались – возвращаемся к инструкциям. Произведем изменения в файлах. Файл «index.php»:

<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document<title>
<head>
<body>
    <?php
        $say = 'Hello world!';
        include 'test/1.php';
echo $test;
        echo "<p>End<p>";
    ?>
<body>
<html>

Файл `1.php`:

<?php
    echo "<h1>{$say}</h1>";
    $test = 'TEst connect';

Посмотрим на изменение в выводе:

PHP include and require Statements

It is possible to insert the content of one PHP file into another PHP file (before the
server executes it), with the include or require statement.

The include and require statements are identical, except upon failure:

  • will produce a fatal error (E_COMPILE_ERROR) and stop the script
  • will only produce a warning (E_WARNING) and the script will continue

So, if you want the execution to go on and show users the output, even if the
include file is missing, use the include statement. Otherwise, in case of FrameWork, CMS, or a
complex PHP application coding, always use the require statement to include a key file to the
flow of execution. This will help avoid compromising your application’s security
and integrity, just in-case one key file is accidentally missing.

Including files saves a lot of work. This means that
you can create a standard header, footer, or menu file for all your web pages.
Then, when the header needs to be updated, you can only
update the header include file.

Другие решения

Некоторые вещи, которые следует иметь в виду, когда требуются файлы:

  1. Вы должны иметь правильный путь.
  2. Файл должен иметь разрешения на чтение.
  3. Зависимости должны быть загружены в первую очередь. Если класс расширяет реферат, имеет интерфейсы или признаки, они должны быть загружены до достижения объявления класса. Аналогично, если зависимости также имеют зависимости, они также должны быть загружены до загрузки самих зависимостей.

Согласно вашей информации, № 3, кажется, ваша проблема. Родительский класс должен быть загружен до объявления дочернего класса.

хорошая практика, чтобы сделать это проще:

  • Объявите константы, которые сопоставляются с корнем вашего приложения, библиотеками и т. Д., Прежде чем вам потребуются различные файлы, поэтому вам не потребуется использовать сложную навигацию для их поиска.
  • Используйте автозагрузчик, предпочтительно psr-0 или psr-4-совместимый.

Быстрый способ проверки (достаточно надежно):

Лучший способ:

Функция require()

Функция require() принимает весь текст в указанном файле и копирует его в файл, который использует функцию include. Если есть какие — либо проблемы при загрузке файла, то функция require() генерирует фатальную ошибку и остановить выполнение сценария.

Таким образом, нет разницы в require() и include(), за исключением того, что они обрабатывают условия ошибки. Рекомендуется использовать функцию require() вместо include(), поскольку скрипты не должны продолжать выполняться, если файлы отсутствуют или неназванные.

Вы можете попробовать использовать вышеприведенный пример с функцией require(), и он будет генерировать тот же результат. Но если вы попытаетесь выполнить два примера, где файл не существует, вы получите разные результаты.

<?php include ("xxmenu.php"); ?>
<p>Это пример, показывающий, как включить неправильный файл PHP!</p>

Это приведет к следующему результату —

Теперь давайте попробовать тот же пример с require().

<?php require ( " xxmenu.php " ); ?>
<p> Это пример, показывающий, как включить неправильный файл PHP!</p>

Это временное выполнение файла останавливается, и ничего не отображается.

Новые статьи

  • Ошибки в PHP и обработка исключений — 12/04/2018 19:21
  • Регулярные выражения PHP -Кванторы, мета-символы и модификаторы — 12/04/2018 19:20
  • Сеансы PHP — Запуск, уничтожение, сессии без файлов cookie — 12/04/2018 19:20
  • PHP-файлы cookie — Настройка, доступ и удаление cookie — 12/04/2018 19:19
  • Файлы PHP и ввод-вывод — открытие, чтение, запись и закрытие файла — 12/04/2018 19:18
  • Методы PHP GET и POST, переменная $_REQUEST — 12/04/2018 19:17
  • Загрузка файлов PHP — Создание формы и сценария загрузки — 12/04/2018 19:16
  • Объектно-ориентированное программирование в PHP — 12/04/2018 19:15

Предыдущие статьи

  • Предопределенные переменные PHP — Суперглобальные массивы и переменные сервера — 12/04/2018 19:13
  • Функции с параметрами, динамические вызовы, создание функции в PHP — 12/04/2018 19:12
  • Типы операторов PHP — категории, присваивания, логические операторы — 12/04/2018 19:11
  • Типы циклов PHP for, foreach, continue, break, do-while — 12/04/2018 19:10
  • Принятие решений PHP — ElseIf Switch — 12/04/2018 19:09
  • Типы констант PHP — Различия между константами и переменными — 12/04/2018 19:08
  • Массивы PHP: Многомерные, ассоциативные и числовые массивы — 12/04/2018 19:07
  • Типы переменных, область и имена переменных в PHP — 12/04/2018 19:06
  • Строки в PHP, strpos, strlen, конкатенация строк — 12/04/2018 19:05
  • Дата и время, получение, преобразование времени в PHP — 12/04/2018 19:03
  • Обзор синтаксиса, канонические теги, комментирование PHP-кода — 12/04/2018 19:02
  • Введение в PHP. Общее использование, характеристики PHP — 12/04/2018 19:01

PHP Примеры include

Пример 1

Предположим, у нас есть стандартный файл нижнего колонтитула «footer.php», он выглядит так:

<?phpecho «<p>Copyright &copy; 1999-» . date(«Y») . » SchoolsW3.com</p>»;?>

Чтобы подключить в файл «footer.php» на странице, используйте заявление :

Пример

<html>
<body>
<h1>Добро пожаловать на мою домашнюю страницу!</h1>
<p>Немного текста.</p><p>Еще немного текста.</p><?php include ‘footer.php’;?>
</body>
</html>

Пример 2

Предположим у нас есть стандартное меню Файл «menu.php»:

<?phpecho ‘<a href=»/index.php»>Главная</a> -<a href=»/html/index.php»>Учебник HTML</a> -<a href=»/css/index.php»>Учебник CSS</a> -<a href=»/js/index.php»>УчебникJavaScript</a> -<a href=»index.php»>Учебник PHP</a>’;?>

Все страницы на веб сайте должны использовать файл «menu.php». Вот как это можно сделать
(мы используем элемент a <div>, чтобы меню легко можно было стилизовать с помощью CSS позже):

Пример

<html>
<body>
<div class=»menu»><?php include ‘menu.php’;?></div>
<h1>Добро пожаловать на мою домашнюю страницу!</h1><p>Немного текста.</p><p>Еще немного текста.</p>
</body>
</html>

Пример 3

Предположим у нас есть файл с названием «vars.php», с определенными переменными:

<?php
$color=’красный’;
$car=’БМВ’;
?>

После этого, если мы подключаем файл «vars.php», переменные могут использоваться в подключающем файле:

Пример

<html>
<body>
<h1>Добро пожаловать на мою домашнюю страницу!</h1>
<?php include ‘vars.php’;
echo «У меня есть $color $car.»;?>
</body>
</html>

Пример использования команды include

В предыдущей статье я рассказывал о блочной вёрстке сайта и приводил в пример простейшую страницу (документ index.html и привязанный к нему файл style.css).

Сейчас мы разделим документ index.html на несколько файлов, каждый из которых будет содержать свою часть страницы, что поможет ещё сильней разделить код, улучшить структуру шаблона и, по сути, сделать страницу динамической. Для этой цели мы будем использовать язык PHP, а точнее лишь одну его директиву — функцию include(), которая включает один файл в другой.

1. Смените разрешение созданного в статье о блочной вёрстке файла index с .html на .php, чтобы документ назывался index.php. Тип файла .PHP указывает серверу, что документ был написан или использует вставки на одноимённом языке программирования.

2. В папке со страницей создайте директорию blocks.

3. Всю вспомогательную информацию (верх, низ, навигацию и боковую панель сайта) вынесем в отдельные файлы, которые разместим в папке blocks.

Итак, создайте в каталоге blocks четыре файла: header.php, navigation.php, sidebar.php и footer.php. Заполните файлы кодом.

header.php:

	<div id="header">
	<h2>header (шапка сайта)</h2>
</div>

navigation.php

	<div id="navigation">
	<h2>Блок навигации</h2>
	</div>

sidebar.php

	<div id="sidebar">
	<h2>Левая панель</h2>
	</div>

footer.php

	<div id="clear">
		 
	</div>

	<div id="footer">
	<h2>footer (низ сайта)</h2>
	</div>

4. Проверьте структуру папки шаблона. В корне должны находиться файлы index.php, style.css и директория blocks.

Структура папки blocks должна быть такой.

5. В файле index.php удалите существующий код и напишите новый:

<!DOCTYPE html>
<html>
<head>
    <title>Блочная вёрстка</title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<div id="container">
	<?php include ("blocks/header.php");?>
	<?php include ("blocks/navigation.php");?>
	<?php include ("blocks/sidebar.php");?>
	<div id="content">
	<h2>Основной контент страницы</h2>
	</div>
		 
	<?php include ("blocks/footer.php");?>

</div>
</body>
</html>

В браузере файл index.php выглядит точно так же, как и раньше, но структура шаблона при этом полностью изменилась. О том, что получилось, поговорим потом, а сейчас ответим на вопрос о загадочных командах вида <?php include («имя_файла»);?>.

Как и HTML-код, код PHP тоже имеет своё обозначение начала и конца. Так вот начинать PHP-вставку нужно командой <?php, а заканчивать строкой ?>. Между этими командами пишется основной код. В нашем случае это всего лишь одна команда — include.

Функция include() вставляет в файл код из другого файла, давая возможность хранить разные части страницы в разных документах, тем самым надёжно отделяя их друг от друга.

В результате выполненных действий мы получили динамическую страницу index.php, части которой подгружаются из разных файлов. Благодаря этому можно создавать другие страницы, точно так же подгружая в них вспомогательные элементы из файлов папки blocks.

Такой подход хорош тем, что если вы захотите на сайте в 20-30 страниц изменить, скажем, название пункта меню, то в шаблоне с только что созданной структурой понадобится внести правки только в один файл — blocks/navigation.php, и меню изменится сразу на всех страницах, в которые он включен. Если же сайт был бы статическим, то для смены названия одного пункта меню вам пришлось бы вносить изменения в каждую из 20-30 страниц. Разница очевидна.

Дата размещения/обновления информации: 29.04.2021 г.
Сообщить об ошибке

PHP include Examples

Example 1

Assume we have a standard footer file called «footer.php», that looks like this:

<?phpecho «<p>Copyright &copy; 1999-» . date(«Y») . » W3Schools.com</p>»;?>

To include the footer file in a page, use the statement:

Example

<html>
<body>
<h1>Welcome to my home page!</h1>
<p>Some text.</p><p>Some more text.</p><?php include ‘footer.php’;?>
</body>
</html>

Example 2

Assume we have a standard menu file called «menu.php»:

<?phpecho ‘<a href=»/default.asp»>Home</a> -<a href=»/html/default.asp»>HTML Tutorial</a> -<a href=»/css/default.asp»>CSS Tutorial</a> -<a href=»/js/default.asp»>JavaScript Tutorial</a> -<a href=»default.asp»>PHP Tutorial</a>’;?>

All pages in the Web site should use this menu file. Here is how it can be done
(we are using a <div> element so that the menu easily can be styled with CSS later):

Example

<html>
<body>
<div class=»menu»><?php include ‘menu.php’;?></div>
<h1>Welcome to my home page!</h1><p>Some text.</p><p>Some more text.</p>
</body>
</html>

Example 3

Assume we have a file called «vars.php», with some variables defined:

<?php
$color=’red’;
$car=’BMW’;
?>

Then, if we include the «vars.php» file, the variables can be used in the calling file:

Example

<html>
<body>
<h1>Welcome to my home page!</h1>
<?php include ‘vars.php’;
echo «I have a $color $car.»;?>
</body>
</html>

Ответ 2

Используется следующим образом:

requireкогда файл требуется вашему приложению, например, шаблон важного сообщения или файл, содержащий переменные конфигурации, без которых приложение не работает.

require_onceкогда файл содержит контент, который может вызвать ошибку при последующем включении, например, function important() { /*импорт кода */} — это определенно необходимо в вашем приложении, но, поскольку функции не могут быть повторно объявлены, не следует включать их снова.

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

include_onceнеобязательные зависимости, которые могут вызвать ошибки при последующей загрузке или, возможно, удаленное включение файла, которое вы не хотите повторять дважды из-за накладных расходов HTTP.

Но в основном вам решать, когда использовать каждый из вариантов.

Ответ 3

Я предлагаю просто использовать require_once в 99,9% случаев.

Использование require или include вместо этого подразумевает, что ваш код не может быть повторно использован в других местах, т. е. что скрипты, которые вы подключаете, действительно выполняют код, а не делают доступными класс или некоторые библиотеки функций.

Если вы требуете/включаете код, который выполняется на месте, то это процедурный код, и вам нужно познакомиться с новой парадигмой. Например, объектно-ориентированное программирование, программирование на основе функций или функциональное программирование.

Если вы уже занимаетесь ООП или функциональным программированием, то использование include_once в основном будет откладывать поиск ошибок в стеке. Хотите ли вы знать, что функция do_cool_stuff() недоступна, когда вы собираетесь обратиться к ней позже или в тот момент, когда вы ожидаете, что она будет доступна, требуя библиотеку? Как правило, лучше сразу узнать, что что-то нужное и ожидаемое недоступно, поэтому просто используйте require_once.

В качестве альтернативы в современном ООП просто автоподключайте свои классы при использовании.

include

Инструкция include позволяет подключать и присоединять к вашему PHP-сценарию другие сценарии. При запуске программы интерпретатор просто заменит инструкцию на содержимое подключаемого файла. Давайте посмотрим как это работает, создайте файл с именем и напишите внутри:

<?php
  
  $var1 = 'красный';
  $var2 = 'яблоко';

?>

Теперь создадим другой файл и назовем его к примеру , в котором мы подключим файл :

<?php
 
  // предполагается, что файл add.php находится в той же директории, 
  // что и сам сценарий, поэтому мы не указываем путь к файлу
  include 'add.php';
  echo "\$var1 = $var1<br> \$var2 = $var2"

?>

Как видно из примера инструкция присоединяет содержимое подключаемого файла, благодаря этому ваша программа получает доступ к другим переменным, функциям, классам и т.д.

Примечание: вы можете присваивать подключаемым файлам любые имена, но всегда добавляйте расширение , потому что при использовании другого расширения, злоумышленники могут запросить ваш файл, и веб-сервер вернет его текст. Это угроза безопасности, поскольку могут быть раскрыты пароли или принцип действия вашей программы, что дает лазейку злоумышленникам. Чтобы этого не происходило, подключаемые файлы должны обрабатываться интерпретатором PHP.

Различия `include`, `include_once`, `require`, `require_once`

Переименуем файл «1.php»в файл «2.php» и обратимся к «index.php»:

В итоге получаем ошибку

Но обратите внимание на то, что после вывода ошибки код PHP все равно продолжил выполнение и вывел `End`. Заменим `include` на `require` и запустим на выполнение

В итоге видим похожие ошибки, но не видим вывода `End` в конце: после ошибки код php прекратил свою работу.

Разница между `include` и `require` заключается в том, что при подключении файла PHP первая инструкция позволяет продолжить выполнения скрипта, если не найден файл, а `require` завершает его, выводя фатальную ошибку.

Теперь рассмотрим отличие инструкций `require` и `require_once`. Внесем небольшие правки в наши файлы. Вот новый «index.php»:

<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document<title>
<head>
<body>
    <?php
        $say = 'Hello world!';
        require 'test/2.php';
        require 'test/2.php';
        require 'test/2.php';
        require 'test/2.php';
        echo "<p>End<p>";
    ?>
<body>
<html>

И файл «2.php»:

<?php
    echo "<h1>{$say}</h1>";

Запускаем:

Как видно на скриншоте, с помощью `require` мы успешно подключили файл несколько раз. Снова внесем изменение в файлы. Новый файл «index.php»:

<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document<title>
<head>
<body>
    <?php
        require 'test/2.php';
        require 'test/2.php';
        require 'test/2.php';
        require 'test/2.php';
        echo "<p>End<p>";
    ?>
<body>
<html>

И новый файл «2.php» — на этот раз объявим там функцию:

<?php
    echo '<p>Im included</p>';
    function sayHello($say)
    {
        echo "<h1>{$say}</h1>";
    }

Результат выполнения:

Второе подключение файла «2.php» приводит к ошибке, как раз потому что в этом файле происходит объявление функции. А в PHP-скрипте двух одинаковых функций быть не должно.

Теперь заменим все `require` на `require_once` и запустим снова:

Ура, работает! Но обратим внимание на то, что файл подключился только один раз. Теперь вновь переименуем файл `2.php` в `1.php` и запустим «index.php»

Теперь вновь переименуем файл `2.php` в `1.php` и запустим «index.php».

`Require_once`, так же как и `require` завершает выполнение скрипта, если не найден файл указанный для подключения. Заменим `require_once` на `include_once`:

Ошибок стало больше, но код по-прежнему отработал до конца: end в конце картинки это подтверждает. Внесем правки в «index.php»:

<!doctype html>
<html lang="ru">
<head>
    <meta charset="UTF-8">
    <title>Document<title>
<head>
<body>
    <?php
        include_once 'test/1.php';
        include_once 'test/1.php';
        include_once 'test/1.php';
        include_once 'test/1.php';
        echo "<p>End<p>";
    ?>
<body>
<html>

Запустим код:

require ve require_once Kullanımı

include ve include_once fonksiyonlarında parametre olarak verdiğimiz dosya yolu  bulunamıyorsa eğer bize warning tarzında hata veriyordu. require ve require_once de parametre olarak verdiğimiz dosya yolu bulunamassa eğer fatal error verir bize.

Kullanım Şekilleri:

require ve require_once kullanımı

<?php
require «header.php»;
require («header.php»);

require_once «header.php»;
require_once («header.php»);

?>

1
2
3
4
5
6
7
8

<?php

require»header.php»;

require(«header.php»);

require_once»header.php»;

require_once(«header.php»);

 
?>

Yukarıdaki 4 kullanımında birbirinden farkı yoktur.  Hepsi sayfaya bir php dosyasını dahil etmek istediğimizde kullanılır.

Örneğin: bir adet header.php dosyamız ve bir adette index.php dosyamız olsun index dosyamızda header.php yi çağıralım.

header.php dosyamız:

header.php

<?php
echo «Burası Header Dosyasının İçeriğidir.»;

?>

1
2
3
4
5

<?php

echo»Burası Header Dosyasının İçeriğidir.»;

?>

index.php dosyamız:

<?php
require «header.php»;
echo «Burasıda index.php dosyasının içeriğidir.»;

?>

1
2
3
4
5

<?php

require»header.php»;

echo»Burasıda index.php dosyasının içeriğidir.»;

?>

sayfaları oluşturup index.php ye girdiğimizde ekranda header.php ve index.php nin içeriğini görmüş olacağız.

Not: require yerine require_once de kullanabilirdik.

Выводы о необходимости использования include

include — это инструмент, который позволяет управлять контентом.

Включать, выключать по необходимости тот или иной код.

Выводить огромные портянки кода из отдельного файла, чтобы не замусоривать основной файл сайта.

Выполнять один и тот же код на разных страницах с разными исходными данными — это требует пояснения:

Предположим, что на двух страницах есть одинаковые переменные, с разными значениями и обработать их нужно одинаково:
На странице test_1.php $a =1; $b =2;
На странице test_2.php $a =3; $b =4;
Ниже данных инклудим файл со скриптом : echo $a + $b;
Другими словами — вам не нужно писать код отдельно для каждой страницы, вам нужно вывести в файл только тот код, который будет повторяться на каждой странице, а данные на страницах будут разные…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *