Page 38 - 4636
P. 38

Функції  require()  і  include  ()майже  еквівалентні.  Єдина  відмінність  між  ними  полягає  в
        тому,  що  при  невдалому  виконанні  require()генерує  фатальну  помилку,  a  include()-  лише
        попередження.
           Є    дві   модифікації    require()і       include(),які       називаються      require_once()         і
        include_once() відповідно. З їх назв (“once” - “одного разу”) зрозуміло, що вони призначені для
        одноразового включення файлу. Але з відомих прикладів застосування - верхніх і нижніх колонтитулів
        - їх користь не очевидна.
           Однак функції require_once() і include_once() зручні для включення бібліотек функцій. Ці
        конструкції захищають від випадкового повторного включення тієї ж бібліотеки, коли перевизначення
        функцій  може  призвести  до  помилки.  Але  при  досить  акуратному  кодуванні  краще  застосовувати
        require() і include(), тому що вони виконуються швидше.
           Розширення імен файлів і require ()
           У файлі з іменем reusable.php зберігається наступний код:
           <?php
           echo 'А це дуже простий РНР-оператор.<br />';
           ?>
           А у файлі з іменем main. php міститься такий код:
           <?php
           echo 'Це головний файл.<br />';
           require('reusable.php');
           echo 'Зараз сценарій завершиться.<br />';
           ?>
           Коли завантажується файл reusable.php, у вікні браузера відображається текст “А це дуже простий
        РНР-оператор”. Однак при завантаженні файлу main.php відбувається інше. Результат цього сценарію
        показаний на рис. 2.1.
           Щоб  можна  було  використовувати  оператор  require  (),  необхідний  файл.  У  попередньому
        прикладі  використовувався  файл  reusable.php.  При  виконанні  цього  сценарію  оператор
        require('reusable.php');  замінюється  вмістом  потрібного  файлу,  після  чого  сценарій
        виконується.
           Це означає, що завантажений файл main.php виконується так, якби сценарій мав такий вигляд:
           <?php
           echo 'Це головний файл.<br />';
           echo 'А це дуже простий РНР-оператор.<br />' ;
           echo 'Зараз сценарій завершиться.<br />';
           ?>


















             Рисунок 2.1 - Результат, що генерується файлом main.php, відображає результат виконання
                                                  оператора require( )

           При використанні оператора require() слід звернути увагу на відмінності в обробці розширень
        імен файлів і РНР-дескрипторів.


                                                            35
   33   34   35   36   37   38   39   40   41   42   43