Nate 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
..
amp 8c79a02c4a [ci skip]Add framework to swoole and amp (#6038) 4 years ago
cakephp 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
codeigniter 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
comet 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
fat-free 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
fuel 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
hamlet 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
hhvm 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
hyperf 798a13907e Cleanup some items (#5761) 5 years ago
imi 69b5ba56fe Optimise imi (#6046) 4 years ago
kumbiaphp 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
laravel 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
lumen 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
one 1d36375b36 fix update del transaction (#6031) 4 years ago
peachpie 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
phalcon 8a0e06b1a3 Update index-micro.php (#5937) 5 years ago
php 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
php-ngx 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
phpixie 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
simps f312161c0b fix db error for simps (#5796) 5 years ago
slim 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
spiral 7368d95726 Change Spiral to platform RoadRunner (#5113) 5 years ago
sw-fw-less 0ad2353c5a Create a travis Swoole job (#5151) 5 years ago
swoole 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
symfony 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
ubiquity 768db25f2e [Ubiquity] add ngx raw version (#6054) 4 years ago
webman 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
workerman 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
yii2 913e2b8444 Select id and randomnumber to match rules requirements (#6072) 4 years ago
zend 16b653298a Update php frameworks to ubuntu 20.04 (#5989) 5 years ago
README.md 05c8be09fd minor update of php's readme.md (#4976) 6 years ago

README.md

PHP Frameworks

php logo

The information below contains information specific to PHP. For further guidance, review the documentation.

Infrastructure Software Versions

PHP Versions

PHP 7.3.*, PHP 5.6.* and HHVM 3.30.

Adding New PHP-based Frameworks

PHP Acceleration and Caching

Caching the output of the PHP bytecode compiler is expressly allowed by this benchmark. As we use PHP 5.5, which comes with opcache built in, we recommend you use this. However, some frameworks utilize APC instead as switching can be problematic (e.g. APC allows arbitrary data caching, while opcache does not).

Caching the output of parsing your configuration files is also expressly allowed (e.g. file caching, metadata caching). Some frameworks use APCu or memcached to achieve this.

Caching of the classloader (often referred to as optimizing the classloader) is also allowed. Most frameworks have their own methods of doing this.

Caching of any data fetched from the database is not allowed. Specifically, things such as Doctrine's Result Cache are inadmissible.

However, if you are using an ORM that prepares SQL statements in some way, such as how Doctrine translates DQL into SQL, this translated form can be cached, as long as you are dynamically accepting query parameters.

Caching any data using databases (Redis, MongoDB, etc) is discouraged, as 1) our databases run on a separate computer across the network, so you won't see much benefit 2) your usage of the DB may impact other framework's tests, which we cannot allow. You may launch a DB locally on the application server as part of your setup.sh scripts and utilize it for caching the allowable cache items, if you so desire, but it's normally much easier to use systems such as APCu.

Ask if you are not certain.

Dependency Management Using Composer

Many PHP apps use Composer for dependency management, which greatly simplifies downloading the framework, loading the framework, and upgrading the framework version in the future.

Get Help

PHP Experts

There aren't any PHP experts listed, yet. If you're an expert, add yourself!

Resources & Interesting Links

If you find some interesting links related to the PHP tests, add them here.