Joan Miquel b8ca165b5d [php] Update CakePHP to v5 (#8472) 2 years ago
..
amp 1343715e90 [php] Amp update to PHP 8.2 (#8088) 2 years ago
cakephp b8ca165b5d [php] Update CakePHP to v5 (#8472) 2 years ago
codeigniter c7f4a6ab72 [php] Fix Codeigniter & update to v4.4.1 (#8412) 2 years ago
comet 0e77b476ef [php] Fix and update Comet (#8245) 2 years ago
duckphp 1de3343f05 [php] DuckPHP update to PHP 8.2 (#8084) 2 years ago
fat-free 69776374ca [fat-free] Update to PHP 8.1 (#7144) 3 years ago
flight 38ca563d59 [php] Update some fw to Ubuntu 22.04 (#8085) 2 years ago
fuel 5f9d3e0097 Add JIT in php-fpm (#7687) 2 years ago
hamlet 46f2c4650e [hamlet] Add broken tags (#7238) 3 years ago
hhvm 0096f84ee9 Config for the new toolset (#6259) 4 years ago
hyperf da629180d2 Update hyperf benchmark (#6279) 4 years ago
imi 512114a3b9 [php/imi] Update swoole v5.1.0 and use pdo_pgsql hook (#8456) 2 years ago
kumbiaphp 37ce46e92a [php] Kumbia enable JIT again (#7875) 2 years ago
laravel 0bdc8074cb [php] Laravel update to v10 (#8333) 2 years ago
leaf d7db98fd23 [php] Add Leaf 3.3 (#8347) 2 years ago
lumen 5d5d1e24cd [php] Lumen update to v10 (#8334) 2 years ago
mako 0d0653c5b7 Added Mako Framework for PHP [ci fw PHP/mako] (#7827) 2 years ago
mark 6b16e59e1d [php] Mark update to v2 and enable JIT (#8181) 2 years ago
mixphp 23aaa22f56 [php] Mixphp update to PHP 8.2 (#8081) 2 years ago
nette 38ca563d59 [php] Update some fw to Ubuntu 22.04 (#8085) 2 years ago
one 316536c23d up one php to 8.1 (#7785) 2 years ago
openswoole 8149c749a0 {php] OpenSwoole add PostgreSQL (#8033) 2 years ago
peachpie 87439fd4c2 Upgrade peachpie to net 7.0 (#7771) 2 years ago
phalcon 9056ad0d6e [php] Phalcon update to PHP 8.2 (#8089) 2 years ago
php 5f8bc5dad9 Fix FrankenPHP (#8440) 2 years ago
php-ngx 80b12a0d67 Update ngx-php to PHP 8.2 (#8176) 2 years ago
phpixie 38ca563d59 [php] Update some fw to Ubuntu 22.04 (#8085) 2 years ago
reactphp 012c34040f [php] ReactPHP update to PHP 8.2 (#8083) 2 years ago
simps 7ed172682d [php] Simps update to PHP 8.2 (#8082) 2 years ago
slim aae1d2681c [php] Slim update to Adapterman 0.6 and PHP 8.2 (#8025) 2 years ago
spiral 0e204cf8e2 Spiral Framework v3.7 (#8157) 2 years ago
sw-fw-less 37ae1377c5 [php] Mark broken PHP frameworks (#7945) 2 years ago
swoole 1a282fd8b0 [php] Fix Swoole (#7931) 2 years ago
symfony 5f8bc5dad9 Fix FrankenPHP (#8440) 2 years ago
ubiquity 37ae1377c5 [php] Mark broken PHP frameworks (#7945) 2 years ago
webman dd09759872 [php] Webman update to PHP 8.2 (#7707) 2 years ago
wolff 397f580811 added php wolff framework [ci fw PHP/wolff] (#7831) 2 years ago
workerman baeadd3143 Enable JIT (#8130) 2 years ago
yii2 2e68e59551 [php] Yii2 update to Adapterman 0.6 and PHP 8.2 (#8026) 2 years ago
zend 55f78e1c13 Revert PHP to ubuntu 20.04 (#6775) 4 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.