ПредишенСледващото

Програмиране на PHP. Седмото издание. Работа с шаблони. Разработване на собствения си и да използват съществуващите решения.

В този брой ще говорим за такива неща като шаблони (шаблони) - Какво има, защо е необходима и защо почти всички те се използват. Но най-напред, както обикновено, малко новини.

И новините са, че PHP 4.1.0 версия. създаването, за което говорих в предишната версия излезе. Истината, докато тя е достъпна само под формата на изходния код (т.е. прозорци двоичните файлове в раздела за сваляне на www.php.net търсят още безполезни). Между другото, наред с други неща, потребителите на PHP за платформата Windows ще оценят факта, че PHP разработчиците в тази версия говорят за тази версия, като значително по-бързо и по-стабилно raboat под Windows. Пълен списък с промените можете да намерите в официалното съобщение (на английски). Задайте нова версия на PHP на www.php.net и www.php4win.com.

Сега обратно към предмета на тази версия.

Какви са шаблони

Както вече знаете (за това, което беше казано в първото издание), PHP - вдлъбнат (закрепен) език. Т.е. кода му е поставен вътре в HTML страница, и се занимава с производство на динамично съдържание. Един прост пример:

По този начин, шаблони - това е механизъм, който ще ви позволи да повече или по-малко се отървете от здраво свързване на вашия код за вид на вашия сайт и да ви помогне да се улесни задачата за създаване на динамичен код HTML страница. Основната идея на този механизъм е да има множество "филийки" на HTML кода, който вие, като тухли в конструктор, събиране на всяка страница на вашия сайт.

Най-простият шаблони

Най-лесният начин да се използва tempates - е да се създаде набор от променливи, които съдържат части от HTML код. Код на самата страница в това самостоятелно участие комбиниране на HTML код на тези променливи, необходимите данни, за да се получи резултат. Нека да видим, например, може да изглежда като генерирането на една и съща страница с помощта на прости шаблони. Ето, аз не използвате някоя от общия пакет, защото аз просто искам да ви покажа основната идея.

templates.php файл sodezhit описание на всички необходими шаблони. Ако се вгледате в съдържанието на променливите, описани в този файл, вие ще забележите, че това е само една и съща страница, но разделен на много произведения, между които на данни трябва да бъде поставена.

Файлът index.php съдържа в самия код на страницата строителство

Разбира се, този код изглежда просто ужасно, и така (надявам се) никой не го прави. Но основната идея на "събиране" HTML страница от парчетата код, този пример илюстрира доста добре.

Всъщност, основният проблем на горния код е, че тя не ви позволява напълно да се отървете от HTML кода вътре кода на PHP, защото тук всяка част от HTML код се съхранява в отделна променлива. Представете си какво би трябвало да бъде на тези променливи, за да повече или по-малко сложен страница. И, освен това, въпреки факта, че на HTML кода директно поставя в отделен файл, но връзката му с резултатите от PHP код кодиран в кода на PHP (като всички асоциация HTML и PHP код е кодиран).

Повечето от тези проблеми могат да бъдат решени с помощта на проста система на замествания на данни в HTML шаблоните. Един от тях ще бъдат обсъдени в следващия раздел.

Използване на шаблони с данни заместване

Основната разлика между системи, базирани на заместване на данните, е, че те ви позволяват да се използва специфичен синтаксис, за да се определи точката на вмъкване на данни в HTML шаблоните. В действителност всички системи работят с шаблон на базата на този принцип, и единственото нещо, което ги отличава - синтаксиса използва за определяне на шаблони и набора от възможности, предоставени от системата.

Но първо, кратко описание на синтаксиса за описване на шаблоните, използвани в тази система. Аз ще го отведе до EBNF система, подобна на, и след това да даде необходимите обяснения.

"Ключ" за смяна:

Ключът тук е наречен замяната на текста на шаблона, които в последствие ще бъде заменен от някои от данните се подават на функцията - процесорни шаблоните. Тя се състои от две основни части: име (уникален в рамките на шаблона) и по желание стандартна стойност. Тя ще се използва в случай, че обработването на шаблона не е била определена стойността за него. Ако стойността по подразбиране също не е посочен - този ключ ще бъде заменен от празен низ.

Стойността по подразбиране може да се използва и да се уточни специален режим на работа. По-долу са три различни типа на синтаксиса, които са разрешени за стойностите по подразбиране:

Както можете да видите, вида на обработка на стойността по подразбиране, определен в първи символ.

Ако това е знак "#". След това цялата стойност се счита за "поставете в резултат на обработката на шаблона с името