📜 ⬆️ ⬇️

Regenix: New non-standard MVC framework for PHP

Greetings to all. I want to introduce you to my project called Regenix .
image

This is a new MVC framework for the PHP language, within which several interesting and unique ideas are implemented that you are less likely to find in other PHP frameworks. The project was greatly influenced by Play! framework and java language.

In a nutshell, Regenix is a framework that focuses on error control, on a rigid framework, which often does not accept many solutions for a single task. This ensures consistency in a large development team.
')
The main qualities of the framework:



It so happened that I work in a company where Java is often used as the backend language and PHP as the frontend language. There are a lot of well-known frameworks in the PHP world, but many of them do not suit us by many criteria. In addition, after a year of programming in Java and Play, I was very used to a different ideology and about 8 months ago I started developing Regenix in my spare time.

Next, I will talk about the features of the framework in more detail ...

Introduction


Regenix requires PHP 5.3+ and any web server (Nginx + FastCGI, Apache + mod_rewrite, etc.), is
fully open source project and posted on GitHub'e ( https://github.com/dim-s/regenix ). The relevant documentation in English, which can be found on the githab (the Russian version is already outdated), is also partially available.

MVC Architecture


Regenix implements the classic MVC architecture - Models, Views and Controllers. The controller is a class inherited from the base class regenix\mvc\Controller , all of its public non-static methods can be actions (actions). To associate URLs with controller methods (routing), a special configuration file is used with easy-to-read syntax that is very similar to the routings from the Play framework.

Representation (or Templates) are implemented through a special template engine with a simple syntax that is partially similar to Smarty. The template engine defaults to html characters.

Models - implemented with the help of a third-party project - Propel ORM, this is a fairly well-known and popular ORM, with support for migrations, generation of diagrams and models, and several databases - Postgres, MySQL, etc.

Quality Control - Runtime Errors


PHP is a dynamic programming language, which means that often an error occurs at the time of execution. However, Regenix was able to partially solve this problem. The framework has a built-in code analyzer that detects many errors even before executing the code itself. For example, let's take the use of a non-existent class in use (error output in the framework):



It is important to note that the framework finds these errors not at the time of execution! Absolutely all project sources are checked every time the page is opened (of course, this happens in DEV mode), and you can also launch analysis from the CLI. In general, the framework supports the following types of errors:


At the same time it is possible to write your analyzers to fit your needs. It is also planned to write analyzers to check the compatibility of sources with different versions of PHP. How is all this possible? To do this, use a special PHP parser ( project ) and Class Scanner, which I will discuss below.

Class Scanner instead of Loader


Regenix uses a nonstandard class loading model, it does not use class names and their namespace to search for their location, as is now commonly done in PHP. Class Scanner scans source folders for classes. What does this mean? For the framework, there are concepts of class paths (hello from Java), when adding a new source of classes (ie the source folder), the framework scans and writes all the found information about the classes in the cache.

Features of the class scanner:

  1. Finding classes regardless of their naming
  2. Lazy loading classes
  3. The ability to get information about the class without downloading it
  4. The ability to get, for example, all the heirs of a particular class (convenient for modules)


I want to note that Class Scanner stores all found information in the cache and does not greatly affect performance. So, for example, you can find all the heirs of a class in a fairly fast time (the cost of this function is a fraction of a millisecond):

 //   ,      $meta = ClassScanner::find('regenix\libs\RegenixTemplateTag'); foreach($meta->getChildrensAll() as $class){ if (!$class->isAbstract()){ $instance = $class->newInstance(); $this->registerTag($instance); } } 

This approach frees the developer from manually registering any classes of extensions and it is quite convenient.

Routing, URL, CNC


Another important feature of the framework is routing. Regenix uses a separate file for routing settings, let's look at an example of such a file:

 # comment GET / Application.index GET /{action} Application.{action} POST /api/{method} api.Api.{method} * /clients/{id<[0-9]+>} Clients.detail 


The above describes 4 rules for roaming, the first column is the HTTP method (POST, GET, PUT, PATCH, etc.), the second is the path to the page, which may consist of dynamic parts, the third is the controller name and its method (shared by point, you can use namespaces). As you can see from the example, regular expressions are supported, and all dynamic parts are passed to the controller as arguments of methods, for example, the Clients controller:

 <?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { public function detail($id){ // $id    } } 


In addition, in the framework it is possible to write templates for routing in separate files, placing them in the /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
folder /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
  1. /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
    GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
    , :

    # PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
    resource resource.route .

    Regenix ( ).


    Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

    <?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

    render* .
    , , return .

    assets
    . , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

    { "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
    jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

    assets- , :

    <html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
    . !


    Regenix PHP , . Regenix:

    HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
    :

    <!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


    , Regenix. , , , .


    - . Regenix git, . Regenix git-bash:

    cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
    , : framework - , apps - . . - . CLI :

    cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

    regenix new apps, localhost/[name] .


    Regenix , . , , , . Regenix.

    /apps/ . :

    apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

    ( root ) :

    /public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



    . , , 90% .

    Github: https://github.com/dim-s/regenix .
    : https://github.com/dim-s/regenix-documentation/


    PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
  2. /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
    GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
    , :

    # PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
    resource resource.route .

    Regenix ( ).


    Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

    <?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

    render* .
    , , return .

    assets
    . , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

    { "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
    jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

    assets- , :

    <html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
    . !


    Regenix PHP , . Regenix:

    HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
    :

    <!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


    , Regenix. , , , .


    - . Regenix git, . Regenix git-bash:

    cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
    , : framework - , apps - . . - . CLI :

    cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

    regenix new apps, localhost/[name] .


    Regenix , . , , , . Regenix.

    /apps/ . :

    apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

    ( root ) :

    /public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



    . , , 90% .

    Github: https://github.com/dim-s/regenix .
    : https://github.com/dim-s/regenix-documentation/


    PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
  3. /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
    GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
    , :

    # PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
    resource resource.route .

    Regenix ( ).


    Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

    <?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

    render* .
    , , return .

    assets
    . , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

    { "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
    jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

    assets- , :

    <html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
    . !


    Regenix PHP , . Regenix:

    HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
    :

    <!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


    , Regenix. , , , .


    - . Regenix git, . Regenix git-bash:

    cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
    , : framework - , apps - . . - . CLI :

    cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

    regenix new apps, localhost/[name] .


    Regenix , . , , , . Regenix.

    /apps/ . :

    apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

    ( root ) :

    /public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



    . , , 90% .

    Github: https://github.com/dim-s/regenix .
    : https://github.com/dim-s/regenix-documentation/


    PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
  4. /conf/routes/.route. , REST , URL. , conf/routes/resource.route :
    GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
    , :

    # PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
    resource resource.route .

    Regenix ( ).


    Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

    <?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

    render* .
    , , return .

    assets
    . , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

    { "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
    jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

    assets- , :

    <html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
    . !


    Regenix PHP , . Regenix:

    HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
    :

    <!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


    , Regenix. , , , .


    - . Regenix git, . Regenix git-bash:

    cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
    , : framework - , apps - . . - . CLI :

    cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

    regenix new apps, localhost/[name] .


    Regenix , . , , , . Regenix.

    /apps/ . :

    apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

    ( root ) :

    /public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



    . , , 90% .

    Github: https://github.com/dim-s/regenix .
    : https://github.com/dim-s/regenix-documentation/


    PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
 /conf/routes/.route.  ,   REST         ,         URL.     ,      conf/routes/resource.route : 
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .
/conf/routes/.route. , REST , URL. , conf/routes/resource.route :
GET / .index POST /create .create GET /{id} .show PUT /{id}/update .update DELETE /{id}/destroy .destroy
, :

# PostApi CommentApi * /posts/ resource:PostApi * /comments/ resource:CommentApi
resource resource.route .

Regenix ( ).


Regenix regenix\mvc\Controller . : onBefore, onAfter, onFinally, onException, onHttpException, onReturn, onBindParams . . , DI. :

<?php namespace controllers; use regenix\mvc\Controller; class Clients extends Controller { private $service; public function __construct(MyService $service){ // DI $this->service = $service; } public function index(){ .... $this->put("var_name_for_template", $value); // $this->render(); // , "Clients/index.html" } public function detail($id){ // $id - $_GET // : $this->request, $this->response, $this->body, $this->session, $this->flash, etc. } }

render* .
, , return .

assets
. , , , . Regenix assets, . conf/deps.json (jQuery, Angular, etc) , regenix deps update . deps.json:

{ "repository": "github:dim-s/regenix-repository/master", "assets": { "jquery": {"version": "1.*"}, "bootstrap": {"version": "2.*|3.*"} }, "modules": { }, "composer": { "require": { } } }
jQuery Bootstrap ( Bootstrap jQuery). , github, , ( ). , , . , Composer, src/vendor .

assets- , :

<html> <head> {html.asset 'dep:jquery'} <!-- jquery --> {html.asset 'dep:bootstrap'} <!-- ... --> </head> </html>
. !


Regenix PHP , . Regenix:

HTML - - PHP - <?= ... ?> -> { ... } , (html php), include- (, )
:

<!DOCTYPE HTML> <html> <head> <title>{get 'title'}</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> {html.asset 'dep:jquery'} {html.asset 'dep:bootstrap'} {html.asset 'css/main.css'} {html.asset 'js/main.js'} </head> <body> <h1 class="title">{get 'subTitle'}</h1> <div id="content"> {content} </div> <div class="language"> <a href="{path 'Application.index', _lang: 'ru'}">Russian Version</a> / <a href="{path 'Application.index'}">Default Version</a> </div> {debug.info} </body> </html>


, Regenix. , , , .


- . Regenix git, . Regenix git-bash:

cd <root_of_your_server> git clone https://github.com/dim-s/regenix.git ./ git submodule init git submodule update
, : framework - , apps - . . - . CLI :

cd <root_of_your_server> # unix chmod +x install.sh ./install.sh #### regenix new

regenix new apps, localhost/[name] .


Regenix , . , , , . Regenix.

/apps/ . :

apps/<appName>/ * src/* # src/controllers/ # src/models/ # src/views/ # src/* # conf/ # conf/application.conf # conf/route # conf/deps.json # assets, composer conf/analyzer.conf # conf/orm/* # Propel ORM assets/ # css, js, images vendor/ # composer Bootstrap.php # bootstrap Bootstrap,

( root ) :

/public/<appName>/* # upload /logs/ # /assets/ # assets /modules/ #



. , , 90% .

Github: https://github.com/dim-s/regenix .
: https://github.com/dim-s/regenix-documentation/


PS (vendors) - Symfony (Console, Process), Doctrine ( Cache), PHP-Parser, KCaptcha, Imagine, Propel ORM. .

Source: https://habr.com/ru/post/196604/


All Articles