Yii2 composer安装慢的解决办法
下面由composer使用教程栏目给大家介绍Yii2 composer安装慢的解决办法。
在yii中引用php的开源项目用composer已经很方便了,引用前端的开源项目也有composer的插件fxp-asset(https://github.com/fxpio/composer-asset-plugin)和Asset Packagist(https://github.com/hiqdev/asset-packagist)
以前yii默认采用前者,现在新的yii2模版默认采用后者,后者的作者就很厉害了,貌似是个重度yii用户,看来是被fxp-asset的执行缓慢给弄急眼了,所以自己搞了个更新的方法。
言归正传:
所以更快速的安装方式就是 Asset Packagist https://asset-packagist.org
其实就是2步:
在config中关闭fxp-asset的调用
在源列表中加入asset-packagist库的配置
"config": { "process-timeout": 1800, "fxp-asset": { "enabled": false } }, "repositories": [ { "type": "composer", "url": "https://asset-packagist.org" } ]
如果composer的源采用阿里云镜像,完整写法如下:
"repositories": { "0": { "type": "composer", "url": "https://asset-packagist.org" }, "packagist": { "type": "composer", "url": "https://mirrors.aliyun.com/composer/" } }
需要注意的是,yii在yii\base\Application 中定义vendor路径的时候也定义了bower和npm路径:
/** * Sets the directory that stores vendor files. * @param string $path the directory that stores vendor files. */ public function setVendorPath($path) { $this->_vendorPath = Yii::getAlias($path); Yii::setAlias('@vendor', $this->_vendorPath); Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower'); Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm'); }
这就和asset-packagist的默认安装路径有了差别解决办法:
重新定义yii中的bower和npm路径
$config = [ ... 'aliases' => [ '@bower' => '@vendor/bower-asset', '@npm' => '@vendor/npm-asset', ], ... ];
更多composer技术文章,可以访问composer命令使用教程栏目!
Atas ialah kandungan terperinci Yii2 composer安装慢的解决办法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Komposer menyediakan ciri lanjutan, termasuk: 1. Alias: tentukan nama yang sesuai untuk pakej untuk rujukan berulang; , kekangan kepuasan dan alias pakej menyelesaikan keperluan berbeza berbilang pakej untuk versi pergantungan yang sama untuk mengelakkan konflik pemasangan.

Jawapan: Perkhidmatan mikro PHP digunakan dengan HelmCharts untuk pembangunan tangkas dan kontena dengan DockerContainer untuk pengasingan dan kebolehskalaan. Penerangan terperinci: Gunakan HelmCharts untuk menggunakan perkhidmatan mikro PHP secara automatik untuk mencapai pembangunan tangkas. Imej Docker membenarkan lelaran pantas dan kawalan versi perkhidmatan mikro. Piawaian DockerContainer mengasingkan perkhidmatan mikro dan Kubernetes mengurus ketersediaan dan kebolehskalaan bekas. Gunakan Prometheus dan Grafana untuk memantau prestasi dan kesihatan perkhidmatan mikro, serta mencipta penggera dan mekanisme pembaikan automatik.

Cara menukar tatasusunan PHP kepada objek: gunakan kelas stdClass, gunakan fungsi json_decode(), gunakan perpustakaan pihak ketiga (seperti kelas ArrayObject, perpustakaan Hydrator)

Kawalan versi kod PHP: Terdapat dua sistem kawalan versi (VCS) yang biasa digunakan dalam pembangunan PHP: Git: VCS yang diedarkan, tempat pembangun menyimpan salinan asas kod secara setempat untuk memudahkan kerjasama dan kerja luar talian. Subversion: VCS Berpusat, salinan unik pangkalan kod disimpan pada pelayan pusat, memberikan lebih kawalan. VCS membantu pasukan menjejaki perubahan, bekerjasama dan kembali ke versi terdahulu.

PHPCI/CD ialah amalan utama dalam projek DevOps yang mengautomasikan proses binaan, ujian dan penggunaan, dengan itu meningkatkan kecekapan pembangunan dan kualiti perisian. Saluran paip PHPCI/CD biasa terdiri daripada peringkat berikut: 1) Penyepaduan Berterusan: Setiap kali kod berubah, kod dibina dan diuji secara automatik. 2) Penggunaan berterusan: Mempercepatkan penghantaran dengan menggunakan kod yang diuji dan bersepadu secara automatik ke persekitaran pengeluaran. Dengan melaksanakan saluran paip PHPCI/CD, anda boleh meningkatkan kecekapan pembangunan, meningkatkan kualiti perisian, memendekkan masa untuk memasarkan dan meningkatkan kebolehpercayaan.

Terdapat tiga teknologi utama untuk menggambarkan struktur data dalam PHP: Graphviz: alat sumber terbuka yang boleh mencipta perwakilan grafik seperti carta, graf akiklik terarah dan pepohon keputusan. D3.js: Pustaka JavaScript untuk mencipta visualisasi dipacu data interaktif, menjana HTML dan data daripada PHP, dan kemudian menggambarkannya pada sisi klien menggunakan D3.js. ASCIIFlow: Perpustakaan untuk mencipta perwakilan teks rajah aliran data, sesuai untuk visualisasi proses dan algoritma.

Jawapan: Gunakan PHPCI/CD untuk mencapai lelaran pantas, termasuk menyediakan saluran paip CI/CD, ujian automatik dan proses penggunaan. Sediakan saluran paip CI/CD: Pilih alat CI/CD, konfigurasikan repositori kod dan tentukan saluran paip binaan. Ujian automatik: Tulis ujian unit dan penyepaduan dan gunakan rangka kerja ujian untuk memudahkan ujian. Kes praktikal: Menggunakan TravisCI: Pasang TravisCI, tentukan saluran paip, dayakan saluran paip dan lihat hasilnya. Laksanakan penyampaian berterusan: pilih alatan pengerahan, tentukan saluran paip pengerahan dan automatik penggunaan. Faedah: Meningkatkan kecekapan pembangunan, mengurangkan ralat dan memendekkan masa penghantaran.

Menggunakan cache Redis boleh mengoptimumkan prestasi halaman tatasusunan PHP. Ini boleh dicapai melalui langkah berikut: Pasang klien Redis. Sambung ke pelayan Redis. Cipta data cache dan simpan setiap halaman data ke dalam cincangan Redis dengan kunci "halaman:{page_number}". Dapatkan data daripada cache dan elakkan operasi mahal pada tatasusunan besar.
