2020-06-05 13:13:50 +03:00
2020-06-05 11:33:54 +03:00
2020-06-03 19:58:45 +03:00
2020-06-05 11:33:54 +03:00
2020-06-03 19:58:45 +03:00
2020-06-04 00:52:54 +03:00
2020-06-05 11:33:54 +03:00
2020-06-04 00:52:54 +03:00
2020-06-04 00:52:54 +03:00
2020-05-27 01:11:39 +03:00
2020-06-04 00:52:54 +03:00
2020-06-03 19:58:45 +03:00
2020-05-27 01:11:39 +03:00
2020-05-27 01:11:39 +03:00
2020-06-04 00:52:54 +03:00
2020-06-03 19:58:45 +03:00
2020-05-27 01:11:39 +03:00
2020-06-03 19:58:45 +03:00
2020-05-27 01:11:39 +03:00

Yii application template


Latest Stable Version Total Downloads build Scrutinizer Code Quality Code Coverage

Yii application template for Yii 3 is best for rapidly creating projects.

Directory structure

  config/             contains application configurations
  resources/layout    contains layout files for the web application
  resources/view      contains view files for the web application
  app/                application directory
      Asset/          contains assets definition
      Controller/     contains Web controller classes
      Factory/        contains factory classes files for config
      Provider/       contains provider classes for config
  runtime/            contains files generated during runtime
  tests/              contains various tests for the basic application
  vendor/             contains dependent 3rd-party packages      
  public/             contains the entry script and Web resources

Requirements

The minimum requirement by this project template that your Web server supports PHP 7.4.0.

Installation

If you do not have Composer, you may install it by following the instructions at getcomposer.org.

You can then install this project template using the following command:

composer create-project --prefer-dist --stability dev yiisoft/app <your project>

Now you should be able to access the application through the following URL, assuming app is the directory directly under the public root.

Web application config

config/params.php:

Yiisoft Application Components

Aliases
'aliases' => [
    // standard directory aliases
    '@root' => dirname(__DIR__),
    '@assets' => '@root/public/assets',
    '@assetsUrl' => '/assets',
    '@npm' => '@root/node_modules',
    '@public' => '@root/public',
    '@resources' => '@root/resources',
    '@runtime' => '@root/runtime',
    '@views' => '@root/resources/views'
],
Cache
'yiisoft/cache-file' => [
    'file-cache' => [
        // cache directory path
        'path' => '@runtime/cache'
    ],
],
Log Target File
use Psr\Log\LogLevel;

'yiisoft/log-target-file' => [
    'file-target' => [
        // route directory file log
        'file' => '@runtime/logs/app.log',
        // levels logs target
        'levels' => [
            LogLevel::EMERGENCY,
            LogLevel::ERROR,
            LogLevel::WARNING,
            LogLevel::INFO,
            LogLevel::DEBUG,
        ],
    ],
    'file-rotator' => [
        // maximum file size, in kilo-bytes. Defaults to 10240, meaning 10MB.
        'maxfilesize' => 10,
        // number of files used for rotation. Defaults to 5.
        'maxfiles' => 5,
        // the permission to be set for newly created files.
        'filemode' => null,
        // Whether to rotate files by copy and truncate in contrast to rotation by renaming files.
        'rotatebycopy' => null
    ],
],
Session
'yiisoft/yii-web' => [
    'session' => [
        // options for cookies
        'options' => ['cookie_secure' => 0],
        // session handler
        'handler' => null
    ],
],
Yii Debug
'yiisoft/yii-debug' => [
    // enabled/disabled debugger
    'enabled' => true
],
Application Layout Parameters
'app' => [
    'brandurl' => '/',
    'charset' => 'UTF-8',
    'hero.options' => ['class' => 'hero is-fullheight is-light'],
    'hero.head.options' => ['class' => 'hero-head has-background-black'],
    'hero.body.options' => ['class' => 'hero-body is-light'],
    'hero.container.options' => ['class' => 'container has-text-centered'],
    'hero.footer.options' => ['class' => 'hero-footer has-background-black'],
    'hero.footer.column.options' => ['class' => 'columns is-mobile'],
    'hero.footer.column.left' => 'Left',
    'hero.footer.column.left.options' => ['class' => 'column has-text-left has-text-light'],
    'hero.footer.column.center' => 'Center',
    'hero.footer.column.center.options' => ['class' => 'column has-text-centered has-text-light'],
    'hero.footer.column.right' => 'Right',
    'hero.footer.column.right.options' => ['class' => 'column has-text-right has-text-light'],
    'language' => 'en',
    'logo' => '/images/yii-logo.jpg',
    'name' => 'My Project',
    'navbar.options' => ['class' => 'navbar'],
    'navbar.brand.options' => ['class' => 'navbar-brand'],
    'navbar.brand.logo.options' => ['class' => 'navbar-item'],
    'navbar.brand.title.options' => ['class' => 'navbar-item has-text-light'],
],

Using PHP built-in server

php -S 127.0.0.1:8080 -t public

Wait till it is up, then open the following URL in your browser

http://localhost:8080

Running Codeception tests

php -S 127.0.0.1:8080 -t public > ./runtime/yii.log 2>&1 &
vendor/bin/codecept run
Description
No description provided
Readme 2.2 MiB
Languages
PHP 85.4%
Makefile 9%
Dockerfile 2.8%
CSS 2.5%
Batchfile 0.3%