Démarrer
Oui, c'est vrai: j'ai commencé à écrire le cœur du moteur PHP en 2001.
Ensuite, tout était plus simple: le répertoire inc /, qu'il contient header.php, footer.php, common.php.
Mais c'était ennuyeux et inintéressant, j'avais besoin d'encore plus de puces que je pourrais offrir aux clients. C'est ainsi que la section admin / est apparue. Mais à peu près au même moment où PHPNuke est apparu, c'était une bombe! Un tel niveau de personnalisation! Je me suis rendu compte que je ne pouvais rien proposer de ce genre, mais selon les besoins, mon moteur était beaucoup plus simple, même s'il me permettait d'organiser un catalogue de produits, une liste d'articles, une galerie. Depuis plusieurs années, j'ai évolué dans mon métier principal: administrer des serveurs Linux.
- PHP-. , :
.
.
! ! 50+ ! , 100 , MySQL .
: CMS , . , - .
Subversion: ! - 60 8w180! / ! , ,
"" AJAX, PHP, : , inc/ , , ?
, Gentoo. ! ! Gentoo - :)
:( : catalog/index.php .
$input["list_id"];
. ! , !
, .
. , . , ... , , : $DB->Query. , , ORM . , , 1 ! : , – , : , !? , , , : XML ! ! , . , , , .
, Yii1, , ! CMS : . Yii1 , . , , : Yii2. : MariaDB, MySQL , , EXPLAIN, .
: PHP. Vova07. CRUD' , RBAC, REST API, . .
CMS inc/. include/. :( ln -s ./inc ./include, , :( include/lib_*, , , . : : , Twig? JS CSS , laravel-mix ? CSS SASS, , , .
!.. . , make make install make test. ./configure , ? - ! - , composer test - , ! , , . , CMS , TDD , , .
100500 .
. : - : "? ! ? , !". , : : , , . , : . - , : DI . DI , , request, response, log, cache, PSR, :) . Phinx, symfony/console akephp. ake : ?
Résultat
Au final, c'était un chemin difficile, mais je suis content du résultat. Bien sûr, il reste encore beaucoup à faire, mais maintenant je suis prêt à partager mon travail avec la communauté. Il est dommage que les clients ne voient pas la différence entre un jeu de béquilles et un code plus propre qui peut être changé sans craindre de faire tomber la carte sur laquelle repose toute la béquille. Mais ça valait le coup, vraiment!
Oh oui: GitHub