Rumah >pembangunan bahagian belakang >tutorial php >Amalan aplikasi dan promosi spesifikasi PSR2 dan PSR4 dalam rangka kerja CakePHP
. PSR2 dan PSR4 yang dicadangkan oleh PHP-FIG (PHP Framework Interop Group) ialah piawaian pengekodan yang digunakan secara meluas oleh pembangun PHP. Dalam artikel ini, saya akan memperkenalkan secara terperinci amalan aplikasi spesifikasi PSR2 dan PSR4 dalam rangka kerja CakePHP dan memberikan contoh kod khusus.
1. Amalan aplikasi spesifikasi PSR2
Penyatuan gaya kodSpesifikasi PSR2 terutamanya tertumpu pada penyatuan gaya kod, termasuk lekukan, ruang, kurungan, penamaan, dll. Dalam rangka kerja CakePHP, kami boleh memaksa kod untuk mengikut spesifikasi PSR2 dengan mengkonfigurasi alat semakan gaya kod CakePHP.
Pertama sekali, buat fail .php_cs.dist
dalam direktori akar projek Kandungan fail adalah seperti berikut:
<?php return PhpCsFixerConfig::create() ->setRiskyAllowed(true) ->setRules([ '@PSR2' => true, // 在这里添加其他自定义的规则 ]) ->setFinder( PhpCsFixerFinder::create() ->exclude('vendor') ->in(__DIR__) );
friendsofphp/php-cs-. pakej fixer
code> dan tambahkan arahan skrip berikut dalam composer.json
: "scripts": { "cs-check": "php-cs-fixer fix --dry-run", "cs-fix": "php-cs-fixer fix" }
composer cs-check
untuk menyemak sama ada kod dalam projek mematuhi PSR2 Standard, laksanakan perintah composer cs-fix
untuk menyelesaikan masalah gaya dalam kod secara automatik. Selain itu, spesifikasi PSR2 juga memerlukan pembangun membuat ulasan piawai pada kod, termasuk ulasan pada kelas, atribut, kaedah, dsb. Dalam rangka kerja CakePHP, kami boleh menggunakan anotasi PHPDoc untuk mencapai keperluan ini. .php_cs.dist
文件,文件内容如下:
/** * Class UserController * * @package AppController * @property AppModelTableUsersTable $Users */ class UserController extends AppController { /** * 用户列表页 * * @return CakeHttpResponse|null */ public function index() { // 方法逻辑...... } }
然后,我们通过安装friendsofphp/php-cs-fixer
包,并在composer.json
中添加以下脚本命令:
"autoload": { "psr-4": { "App\": "src/", "App\Test\": "tests/", "App\Console\": "src/Console/", "App\Controller\": "src/Controller/", // 添加其他命名空间映射 } }
最后,执行composer cs-check
命令即可检查项目中的代码是否符合PSR2规范,执行composer cs-fix
命令可以自动修复代码中的风格问题。
例如,对于一个控制器类UserController
,我们可以按照以下示例进行注释:
use AppControllerUserController; class AppController extends CakeControllerController { // 控制器的代码...... }
通过以上示例,我们可以清晰地知道该控制器对应的数据表、方法的用途以及返回值等信息。
二、PSR4规范的应用实践
PSR4规范主要关注PHP命名空间的自动加载,它提供了一种统一的方式来加载应用程序中的类。
在CakePHP框架中,我们可以通过以下步骤来使用PSR4规范:
composer.json
中添加以下内容:composer dump-autoload
命令,将自动加载规则应用到项目中。以上示例中,我们使用了AppControllerUserController
Sebagai contoh, untuk kelas pengawal UserController
, kita boleh memberi anotasi mengikut contoh berikut:
rrreee
composer.json
: 🎜🎜rrreeeAppControllerUserController
dan tidak memasukkan fail kelas secara manual, tetapi memuatkannya melalui pemuatan automatik ini kelas. 🎜🎜Kesimpulan: 🎜Dengan menggunakan spesifikasi PSR2 dan PSR4 pada rangka kerja CakePHP, kami boleh meningkatkan kebolehbacaan kod, menggunakan gaya pengekodan bersatu dan piawaian pengekodan, dengan itu meningkatkan kebolehselenggaraan projek dan kecekapan pembangunan pasukan. Pada masa yang sama, melalui kod contoh di atas, kita dapat memahami dengan jelas cara menggunakan kedua-dua spesifikasi ini dalam rangka kerja CakePHP. Saya percaya bahawa pengalaman praktikal ini akan membantu anda dalam pembangunan masa hadapan. 🎜Atas ialah kandungan terperinci Amalan aplikasi dan promosi spesifikasi PSR2 dan PSR4 dalam rangka kerja CakePHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!