PHP функция за вмъкване на документ в друг

Отличен инструмент за улеснение при изграждане на уеб страници е функцията include(). Чрез нея може да включвате различни файлове в „тялото“ на други файлове. Това спестява доста труд, като в същото време прави кода много по-изчистен и лесен за манипулиране.

Синтаксисът на функцията е include(„име на файл“), в кръглите скоби се записва името на файла, който трябва да бъде извикан. Например за да бъде включен в дадена страница файла menu.php, трябва на мястото в страницата, където желаем да се вижда съдържанието му, да напишем:

include("menu.php")

По този начин може да извикате множество различни файлове на различни места в даден уеб документ.

Да предположим, че имате сайт с множество страници, като всяка страница е изградена от 3 части:

  • горна част (header), в която са разположени логото на сайта и хоризонтално меню с връзки
  • ляво меню (leftmenu) с връзки
  • централна част, където е поместена някаква информация, различна за всяка страница

Два от тези три елемента – горната част и лявото меню – се повтарят във всяка от страниците. Ако трябва да направите всички страници само с HTML, ще се наложи да копирате навсякъде един и същ код за хедъра и лявото меню. Можете да избегнете това, като направите отделни документи за горната и лявата част на страниците и след това само ги включите чрез функцията include() във всички файлове на местата, където трябва да се покажат.

header.php

Нека да направим отделна php страница за горната част, която да представлява таблица с два реда. В първия ред ще поставим графичен файл с логото на сайта, а втория ще представлява хоризонтално меню с няколко линка. Отворете някакъв текстов редактор, например Notepad, и напишете в него следния код:

<table><tr><td>
<img src="header.png" width="400" height="200" />
</td></tr><tr><td>
<a href="page1.php">Линк1</a> |
<a href="page2.php">Линк2</a> |
<a href="page3.php">Линк3</a> |
<a href="page4.php">Линк4</a> |
<a href="page5.php">Линк5</a> |
<a href="page6.php">Линк6</a> |
<a href="page7.php">Линк7</a>
</td></tr></table>

След това съхранете страницата като header.php.

Предварително трябва да имате изработен графичен файл header.png, който изпълва „главата“ на страницата и съдържа логото на сайта.

Файлът header.php ще изглежда по подобен начин, когато е зареден през уеб браузър:

header.php файла, съдържащ заглавната част на страницата

Забележете, че в така написания код няма никакви отварящи или затварящи документа тагове, освен таговете на самата таблица. Няма и никакви php елементи. Езикът PHP позволява да вземете произволно „парче“ HTML код и да го съхраните във вид на самостоятелна PHP страница, като просто го запишете във файл с разширение .php Тези качества на езика са му създали славата на гъвкаво и мощно средство за манипулиране на уеб документи.

leftmenu.php

Сега да създадем лявото меню, което също ще поместим в таблица и ще съхраним като отделен файл под името leftmenu.php. За целта напишете в текстовия редактор следния код:

<table><tr><td>
<ul>
<li><a href="page1.php">Линк1</a>
<li><a href="page2.php">Линк2</a>
<li><a href="page3.php">Линк3</a>
<li><a href="page4.php">Линк4</a>
<li><a href="page5.php">Линк5</a>
<li><a href="page6.php">Линк6</a>
<li><a href="page7.php">Линк7</a>
</ul>
</td></tr></table>

Запишете горния код като leftmenu.php:

leftmenu.php файла, съдържащ менюто

index.php

Сега остава да създадем една от страниците, където файловете header.php и leftmenu.php ще бъдат вмъквани чрез функцията include(). Например това може да бъде началната страница на сайта index.php. За да я създадете, сложете в редактора следния код:

<html>
<head>
<title>Пример за ползване на include()</title>
</head>
<body>
<table><tr><td colspan="2">
<?php include ("header.php"); ?>
</td></tr><tr><td>
<?php include ("leftmenu.php"); ?>
</td><td>
<p>Това е пример, който показва използването на функцията include() за
вмъкване на различни документи в друг документ. В случая страниците header.php и
leftmenu.php са вмъкнати в index.php</p>
<p>По този начин се пести труд и кодът изглежда "по-чист".</p>
</td></tr></table>
</body>
</html>

Запишете горния код като файл с название index.php. Когато заредите index.php в браузъра, включените страници ще се появят, съответно в горната и лявата част на документа:

index.php файла на сайта

По същия начин можете да включите файловете header.php и leftmenu.php в произволно количество страници. Ако решите да промените нещо по хедъра или лявата част на страниците, можете да направите промени единствено в двата файла, като тези промени веднага ще се отразят във всички страници, където са включени.

В случай че трябва да вмъкнете в някакъв документ външен за сайта файл, ще е необходимо да запишете пълния път до файла, например:

include("https://othersite.com/folder/file.php");
Обновена: 02.04.2022

Беше ли Ви полезна тази статия?

Вижте още