# Примеры

Пример #1 Классический пример каталога для приложения

    - index.php
    - .htaccess
    + conf
      |- application.ini //Файл настроек
    - application/
      - Bootstrap.php
      + controllers
         - Index.php //Контроллер по умолчанию
      + views
         |+ index
            - index.phtml //Шаблон вывода для действия по умолчанию
      + modules
      - library
      - models
      - plugins

Пример #2 Введение

Файл index.php — единственная точка входа в приложение, все запросы необходимо направлять через этот файл (например, через файл .htaccess в связке Apache + php_mod)

    <?php

    define("APPLICATION_PATH",  dirname(__FILE__));

    $app  = new Yaf_Application(APPLICATION_PATH . "/conf/application.ini");
    $app->bootstrap() // Выполнение методов, которые определили в файле Bootstrap.php
        ->run()
    ;

    ?>

Пример #3 Правила перенаправления

    #для apache (.htaccess)
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule .* index.php

    #для nginx
    server {
      listen ****;
      server_name  domain.com;
      root   document_root;
      index  index.php index.html index.htm;

      if (!-e $request_filename) {
        rewrite ^/(.*)  /index.php$1 last;
      }
    }

    #для lighttpd
    $HTTP["host"] =~ "(www.)?domain.com$" {
      url.rewrite = (
         "^/(.+)/?$"  => "/index.php/$1",
      )
    }

Пример #4 Конфигурация приложения

    [yaf]
    ;APPLICATION_PATH должна быть определена в index.php
    application.directory=APPLICATION_PATH "/application/"

    ;product секция должна наследовать yaf
    [product:yaf]
    foo=bar

Пример #5 Контроллер по умолчанию

    <?php

    class IndexController extends Yaf_Controller_Abstract
    {
       /* действие по умолчанию */
       public function indexAction()
       {
           $this->_view->word = "hello world";
           // или
           // $this->getView()->word = "hello world";
       }
    }

    ?>

Пример #6 Шаблон вывода по умолчанию

    <html>
        <head>
            <title>Привет, мир!</title>
        </head>
        <body>
            <?php echo $word; ?>
        </body>
    </html>

Пример #7 Запуск приложения

Вывод приведённого примера будет похож на:

    <html>
        <head>
            <title>Hello World</title>
        </head>
        <body>
           Привет, Мир!
        </body>
    </html>

> Замечание:

> Приведённый пример можно также создать через генератор кода Yaf, который можно найти здесь yaf@github.

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open