Page 39 - 4636
P. 39

РНР  ігнорує  розширення  імені  запитуваного  файлу.  Це  означає,  що  файл  можна  називати  як
        завгодно, якщо тільки він не викликається безпосередньо. При використанні оператора require ()
        для завантаження файлу, він фактично стає частиною РНР-файлу і виконується в його складі.
           Зазвичай  РНР-оператори  не  виконуються,  якщо  вони  знаходяться  в  файлі  з  ім'ям,  наприклад,
        page.html. Як правило, РНР викликається тільки для аналізу файлів з певними розширеннями, такими
        як,  наприклад, .php.  (Це  можна змінити  за  допомогою  конфігураційного  файлу  веб-сервера.)  Однак
        якщо завантажити файл page.html з допомогою оператора require (), будь-які РНР-оператори, які
        зберігаються всередині нього, будуть оброблені. Отже, для включення файлів можна вибирати будь-
        які розширення, однак є сенс дотримуватися розумного розширення, на зразок .inc або .php.
           При  цьому  слід  мати  на  увазі,  що  якщо  файли,  що  мають  розширення  .inc  або  якесь  інше
        нестандартне  розширення,  зберігаються  в  дереві  веб-документів,  і  користувачі  безпосередньо
        завантажують  їх  в  браузери,  вони  зможуть  переглянути  в  них  код,  який  там  міститься,  у  вигляді
        простого тексту, включаючи будь-які паролі. Тому важливо або зберігати включені файли поза дерева
        документів, або використовувати стандартні розширення.
           РНР-код розміщується всередині РНР-дескрипторів. Це потрібно робити, якщо є потреба, щоб РНР-
        код всередині запрошеного файлу оброблявся саме як РНР-код.
           Якщо не відкривати РНР-дескриптор, РНР буде розглядати цей код просто як текст або HTML-код і
        виконувати його не буде.

           Використання оператора require () для шаблонів веб-сайту
           Якщо  зовнішній  вигляд  веб-сторінок  на  сайті  компанії  повинен  бути  однаковим,  можна
        скористатися РНР для додавання сторінки шаблонів і стандартних елементів за допомогою оператора
        require().
           Наприклад,  веб-сайт  вигаданої  компанії  ВОВАН  Convulsing  містить  кілька  сторінок,  і  всі  вони
        виглядають так, як показано на рисунку 2.2. Коли потрібно створити нову сторінку, розробник може
        відкрити  існуючу сторінку, вирізати  існуючий текст з середини файлу, вставити туди новий текст  і
        зберегти отриманий файл під новим ім'ям.





















                 Рисунок 2.2 - Всі веб-сторінки сайту компанії ВОВАН Convulsing мають однотипний
                                                    зовнішній вигляд

           Розглянемо таку ситуацію. Веб-сайт вже  існує протягом деякого часу,  і тепер в ньому містяться
        десятки,  сотні  або  навіть  тисячі  сторінок,  причому  всі  вони  витримані  в  єдиному  стилі.  Прийнято
        рішення  частково  змінити  стандартний  вигляд  -  зміна  може  бути  зовсім  незначною,  наприклад,
        включення  адреси  електронної  пошти  в  нижній  колонтитул  або  додавання  одного  нового  запису  в
        навігаційному меню.
           Безпосереднє  багаторазове  використання  розділів  HTML,  загальних  для  всіх  сторінок,  -  це
        раціональний  підхід,  ніж  вирізання  і  вставлення,  виконувані  в  десятках,  сотнях  чи  навіть  тисячах
        сторінок.  Вихідний  код  домашньої  сторінки  (home.html),  показаної  на  рисунку  2.2  наведений  у
        лістингу 2.1.
                                                            36
   34   35   36   37   38   39   40   41   42   43   44