lightmvc / ascmvc
A modular, event-driven and Swoole-enabled framework.
Requires
- php: >=8.0 <8.3
- atlas/orm: 3.1.1
- container-interop/container-interop: 1.2.0
- doctrine/annotations: ^2.0
- doctrine/dbal: 3.5.2
- doctrine/orm: 2.14.0
- filp/whoops: 2.14.6
- laminas/laminas-diactoros: 2.24.0
- laminas/laminas-eventmanager: 3.9.2
- laminas/laminas-stdlib: 3.16.1
- laminas/laminas-stratigility: 3.9.0
- league/plates: 3.4.0
- nikic/fast-route: 1.3.0
- pimple/pimple: 3.5.0
- psr/cache: 2.0.0
- psr/event-dispatcher: 1.0.0
- smarty/smarty: 4.3.0
- symfony/cache: ^5.4
- symfony/process: 5.4.11
- twig/twig: 3.5.0
Requires (Dev)
- atlas/cli: 2.2.0
- linuxforphp/linuxforcomposer: ^2.0
- mockery/mockery: ^1.3
- pds/skeleton: ~1.0
- phpunit/phpunit: ^8.0
- squizlabs/php_codesniffer: ^3.4
README
LightMVC Framework
Easily create PHP applications by using any PHP library within this very modular, event-driven and Swoole-enabled framework!
To add the LightMVC Framework package to your PHP project, you can simply run the following command on your computer's CLI:
$ composer require lightmvc/ascmvc
You can also use the LightMVC Skeleton Application by issuing these commands:
$ git clone https://github.com/lightmvc/lightmvcskel
$ cd lightmvcskel
$ composer install
The LightMVC Skeleton Application can also be downloaded as an archive file from https://lightmvcframework.net/download.
The LightMVC Framework Skeleton Application can run on Swoole in order to make it lightning fast. In order to do so, you must make sure to install Swoole. From the CLI, as the root user, type the following:
$ pecl install swoole
After answering a few questions, Swoole will be compiled and installed. Then, as the root user, run the following command (on Linux/Unix/Mac):
$ echo "extension=swoole.so" >> /etc/php.ini
If running Swoole on Windows, please add the extension manually in PHP's
php.ini
file. Thephp.ini
file might be located elsewhere on your system. For example, on Ubuntu 18.04, when running PHP 7.2, you will find this file in/etc/php/7.2/apache2
. You can discover the location of this file by entering the commandphp --ini
on the command line. It must also be mentioned that some systems have multiple INI files (CLI vs Web). Please modify all those that apply.
Then, from within the root directory of the project, you can run the following command:
$ COMPOSER_PROCESS_TIMEOUT=0 composer run-swoole
By default, Swoole will listen on the
localhost
loopback, on port 9501. If you wish to change this, please modify therun-swoole
command inside thecomposer.json
file accordingly.
Upgrading from 4.0.0 to 5.0.0
When upgrading from version 4.0.0 to 5.0.0, please make sure to replace the namespace \Doctrine\Common with \Ascmvc\Session\Common in your config/session.config.php file.