<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Composer on Dapeng Zhang</title><link>https://zhangdapeng.dev/tags/composer/</link><description>Recent content in Composer on Dapeng Zhang</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Tue, 15 Jul 2025 10:29:04 +0000</lastBuildDate><atom:link href="https://zhangdapeng.dev/tags/composer/index.xml" rel="self" type="application/rss+xml"/><item><title>Composer不同php版本的使用方法</title><link>https://zhangdapeng.dev/p/composer-bu-tong-php-ban-ben-de-shi-yong-fang-fa/</link><pubDate>Tue, 15 Jul 2025 10:29:04 +0000</pubDate><guid>https://zhangdapeng.dev/p/composer-bu-tong-php-ban-ben-de-shi-yong-fang-fa/</guid><description>&lt;p&gt;composer不同php版本的使用方法&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php -r &lt;span style="color:#e6db74"&gt;&amp;#34;copy(&amp;#39;https://getcomposer.org/installer&amp;#39;, &amp;#39;composer-setup.php&amp;#39;);&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php -r &lt;span style="color:#e6db74"&gt;&amp;#34;if (hash_file(&amp;#39;sha384&amp;#39;, &amp;#39;composer-setup.php&amp;#39;) === &amp;#39;55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae&amp;#39;) { echo &amp;#39;Installer verified&amp;#39;; } else { echo &amp;#39;Installer corrupt&amp;#39;; unlink(&amp;#39;composer-setup.php&amp;#39;); } echo PHP_EOL;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php composer-setup.php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php -r &lt;span style="color:#e6db74"&gt;&amp;#34;unlink(&amp;#39;composer-setup.php&amp;#39;);&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果本地安装了多个版本的php，需要将不同版本的php重命名一下&lt;br&gt;
比如安装了&lt;/p&gt;
&lt;p&gt;7.1 7.2 7.3 8.1 8.2&lt;br&gt;
那么，对应的重命名php的名称是&lt;br&gt;
php7.1 php7.2 php7.3 php8.1 php8.2&lt;/p&gt;
&lt;p&gt;之后安装composer的时候直接使用对应重命名的php就好了&lt;br&gt;
比如使用php7.3&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 -r &lt;span style="color:#e6db74"&gt;&amp;#34;copy(&amp;#39;https://getcomposer.org/installer&amp;#39;, &amp;#39;composer-setup.php&amp;#39;);&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 -r &lt;span style="color:#e6db74"&gt;&amp;#34;if (hash_file(&amp;#39;sha384&amp;#39;, &amp;#39;composer-setup.php&amp;#39;) === &amp;#39;55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae&amp;#39;) { echo &amp;#39;Installer verified&amp;#39;; } else { echo &amp;#39;Installer corrupt&amp;#39;; unlink(&amp;#39;composer-setup.php&amp;#39;); } echo PHP_EOL;&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 composer-setup.php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 -r &lt;span style="color:#e6db74"&gt;&amp;#34;unlink(&amp;#39;composer-setup.php&amp;#39;);&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果需要制定composer的话，参考如下&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 composer-setup.php --install-dir&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/bin --filename&lt;span style="color:#f92672"&gt;=&lt;/span&gt;composer7.3 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果遇到错误提示&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;The installation directory &amp;ldquo;/usr/local/bin&amp;rdquo; is not writable&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;请加上sudo&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;sudo php7.3 composer-setup.php --install-dir&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/bin --filename&lt;span style="color:#f92672"&gt;=&lt;/span&gt;composer7.3 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;之后就可以正常使用composer的命令&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php7.3 /usr/local/bin/composer7.3 install -vvv
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;不过执行命令的时候需要将composer替换为composer7.3&lt;/p&gt;
&lt;p&gt;对于其他的版本的也可以使用类似的方式&lt;/p&gt;</description></item><item><title>Composer更新时openssl证书异常处理</title><link>https://zhangdapeng.dev/p/composer-geng-xin-shi-openssl-zheng-shu-yi-chang-chu-li/</link><pubDate>Tue, 15 Jul 2025 10:28:58 +0000</pubDate><guid>https://zhangdapeng.dev/p/composer-geng-xin-shi-openssl-zheng-shu-yi-chang-chu-li/</guid><description>&lt;p&gt;&lt;img class="gallery-image" data-flex-basis="371px" data-flex-grow="154" height="962" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="https://res.cloudinary.com/dy5dvcuc1/image/upload/v1675930021/2023-02-09_15-44.png" srcset="https://zhangdapeng.dev/2023-02-09_15-44_14930713859745024764_hu_50bcbbeb10d3ea9d.png 800w, https://res.cloudinary.com/dy5dvcuc1/image/upload/v1675930021/2023-02-09_15-44.png 1488w" width="1488"&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;composer install&lt;/strong&gt;或者&lt;strong&gt;composer update&lt;/strong&gt; 时出现下面错误&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;/p&gt;
&lt;p&gt;说明需要ssl 证书没有配置或者配置的有问题&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;首先去下载证书&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget http://curl.haxx.se/ca/cacert.pem
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;然后将证书配置到指定目录&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mv cacert.pem /usr/local/openssl/cert.pem
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;之后在修改php.ini文件中openssl的配置&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;openssl.cafile&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/usr/local/openssl/cert.pem
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Composer安装SSL证书异常处理</title><link>https://zhangdapeng.dev/p/composer-an-zhuang-ssl-zheng-shu-yi-chang-chu-li/</link><pubDate>Tue, 15 Jul 2025 10:28:47 +0000</pubDate><guid>https://zhangdapeng.dev/p/composer-an-zhuang-ssl-zheng-shu-yi-chang-chu-li/</guid><description>&lt;p&gt;composer安装SSL证书异常处理，报错信息：error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;/p&gt;
&lt;p&gt;最近发现composer的传统安装方式不行了&lt;/p&gt;
&lt;p&gt;传统方式&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl --insecure -sS https://getcomposer.org/installer | php
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;mv composer.phar /usr/local/bin/composer
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;主要是，执行&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl --insecure -sS https://getcomposer.org/installer | php
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;报错。&lt;/p&gt;
&lt;p&gt;有的时候报错&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;All settings correct for using Composer&lt;br&gt;
Downloading&amp;hellip;&lt;br&gt;
Failed to decode zlib stream&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;有的时候报错&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;All settings correct for using Composer&lt;br&gt;
Downloading&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. Open&lt;br&gt;
SSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
Retrying&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. Open&lt;br&gt;
SSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
Retrying&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. Open&lt;br&gt;
SSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
The download failed repeatedly, aborting.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;使用&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl --insecure -ksS https://getcomposer.org/installer | php
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;也不行，依然报错&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;All settings correct for using Composer&lt;br&gt;
Downloading&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. Open&lt;br&gt;
SSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
Retrying&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. Open&lt;br&gt;
SSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
Retrying&amp;hellip;&lt;br&gt;
The &amp;ldquo;&lt;a class="link" href="https://getcomposer.org/versions%22" target="_blank" rel="noopener"
 &gt;https://getcomposer.org/versions"&lt;/a&gt; file could not be downloaded: SSL operation failed with code 1. OpenSSL Error messages:&lt;br&gt;
error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed&lt;br&gt;
Failed to enable crypto&lt;br&gt;
failed to open stream: operation failed&lt;br&gt;
The download failed repeatedly, aborting.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;执行&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php -r &lt;span style="color:#e6db74"&gt;&amp;#34;copy(&amp;#39;https://install.phpcomposer.com/installer&amp;#39;, &amp;#39;composer-setup.php&amp;#39;);&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;也不行。&lt;/p&gt;
&lt;p&gt;可能是我服务器的证书问题，具体原因不详，具体解决方案如下&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget --no-check-certificate https://install.phpcomposer.com/installer -O ./composer-setup.php
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;下载安装文件，再下载证书文件&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget https://curl.haxx.se/ca/cacert.pem --no-check-certificate -O ./cacert.pem
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;修改php.ini中的openssl.cafile配置&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;vi /usr/local/lib/php.ini
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;修改为&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;openssl.cafile&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/root/cacert.pem
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;退出修改在执行&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php composer-setup.php
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;就可以安装成功了&lt;/p&gt;</description></item><item><title>Composer install 错误提示解决案例（1）</title><link>https://zhangdapeng.dev/p/composer-install-cuo-wu-ti-shi-jie-jue-an-li-1/</link><pubDate>Tue, 15 Jul 2025 09:52:08 +0000</pubDate><guid>https://zhangdapeng.dev/p/composer-install-cuo-wu-ti-shi-jie-jue-an-li-1/</guid><description>&lt;p&gt;composer安装错误处理&lt;/p&gt;
&lt;p&gt;错误提示内容&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;Class UpdateHelper\ComposerPlugin contains 2 abstract methods and must therefore be declared abstract or implement the remaining methods&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;解决办法&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;rm -rf vendor
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer require kylekatarnls/update-helper:&lt;span style="color:#e6db74"&gt;&amp;#34;^1.2.1&amp;#34;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;composer版本：&lt;code&gt;composer@2.0.8&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;参考文章：https://github.com/kylekatarnls/update-helper/issues/7&lt;/p&gt;</description></item><item><title>composer如何使用能够更加顺手（比如忽略依赖）</title><link>https://zhangdapeng.dev/p/composer-ru-he-shi-yong-neng-gou-geng-jia-shun-shou-bi-ru-hu-lve-yi-lai/</link><pubDate>Mon, 14 Jul 2025 14:45:10 +0000</pubDate><guid>https://zhangdapeng.dev/p/composer-ru-he-shi-yong-neng-gou-geng-jia-shun-shou-bi-ru-hu-lve-yi-lai/</guid><description>&lt;p&gt;在用laravel做开发过程中&lt;/p&gt;
&lt;p&gt;遇到一个问题，就是使用composer安装包&lt;/p&gt;
&lt;p&gt;第一个问题，composer安装了什么，我看不到，我是不放心的，或者安装了哪些库，如果慢的话又是卡在了哪里&lt;/p&gt;
&lt;p&gt;第二个问题，经常遇到，本地使用的库，在另外一个地方用不到，但是安装的时候总要依赖php的版本，但是又不想切换版本&lt;/p&gt;
&lt;p&gt;下面这个命令解决了以上两个问题，其实之所以记录，就是想知道为什么同样的问题遇到了两次，我依然还是会忘记&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer install -vvv --ignore-platform-reqs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;经过回忆，因为每次遇到了我没记录下来，另外是使用的这几次时间上相隔太远以至于没有了记忆。（注意上面命令中install与require的区别）&lt;/p&gt;
&lt;p&gt;这里推荐一个composer的使用说明，比较详细，之前找了很多，都是写的很乱，无法详细的了解，想看的点击&lt;a class="link" href="https://learnku.com/docs/composer/2018/03-cli/2084" target="_blank" rel="noopener"
 &gt;这里&lt;/a&gt;。&lt;/p&gt;</description></item><item><title>PHP composer 镜像加速地址</title><link>https://zhangdapeng.dev/p/php-composer-jing-xiang-jia-su-di-zhi/</link><pubDate>Thu, 10 Jul 2025 10:58:07 +0000</pubDate><guid>https://zhangdapeng.dev/p/php-composer-jing-xiang-jia-su-di-zhi/</guid><description>&lt;h3 id="阿里云-composer-全量镜像推荐"&gt;阿里云 Composer 全量镜像（推荐）
&lt;/h3&gt;&lt;p&gt;镜像类型：全量镜像&lt;/p&gt;
&lt;p&gt;更新时间：1 分钟&lt;/p&gt;
&lt;p&gt;镜像地址：&lt;a class="link" href="https://mirrors.aliyun.com/composer/" target="_blank" rel="noopener"
 &gt;https://mirrors.aliyun.com/composer/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;官方地址：&lt;a class="link" href="https://developer.aliyun.com/composer" target="_blank" rel="noopener"
 &gt;https://developer.aliyun.com/composer&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;镜像说明：阿里云 CDN 加速，更新速度快，推荐使用&lt;/p&gt;
&lt;h3 id="安畅网络镜像"&gt;安畅网络镜像
&lt;/h3&gt;&lt;p&gt;镜像类型：全量镜像&lt;/p&gt;
&lt;p&gt;更新时间：1 分钟&lt;/p&gt;
&lt;p&gt;镜像地址：&lt;a class="link" href="https://php.cnpkg.org/" target="_blank" rel="noopener"
 &gt;https://php.cnpkg.org&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;官方地址：&lt;a class="link" href="https://php.cnpkg.org/" target="_blank" rel="noopener"
 &gt;https://php.cnpkg.org/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;镜像说明：此 Composer 镜像由安畅网络赞助，目前支持元数据、下载包全量代理。&lt;/p&gt;
&lt;h3 id="交通大学镜像"&gt;交通大学镜像
&lt;/h3&gt;&lt;p&gt;镜像类型：非全量镜像&lt;/p&gt;
&lt;p&gt;镜像地址：&lt;a class="link" href="https://packagist.mirrors.sjtug.sjtu.edu.cn/" target="_blank" rel="noopener"
 &gt;https://packagist.mirrors.sjtug.sjtu.edu.cn&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;官方地址：&lt;a class="link" href="https://packagist.mirrors.sjtug.sjtu.edu.cn/" target="_blank" rel="noopener"
 &gt;https://packagist.mirrors.sjtug.sjtu.edu.cn/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;镜像说明：上海交通大学提供的 composer 镜像，稳定、快速、现代的镜像服务，推荐使用。&lt;/p&gt;
&lt;h3 id="全局配置推荐"&gt;全局配置（推荐）
&lt;/h3&gt;&lt;p&gt;所有项目都会使用该镜像地址：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;取消配置：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer config -g --unset repos.packagist
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;项目配置&lt;/p&gt;
&lt;p&gt;仅修改当前工程配置，仅当前工程可使用该镜像地址：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer config repo.packagist composer https://mirrors.aliyun.com/composer/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;取消配置：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer config --unset repos.packagist
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;调试&lt;/p&gt;
&lt;p&gt;composer 命令增加 -vvv 可输出详细的信息，命令如下：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer -vvv require alibabacloud/sdk
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="忽略版本匹配"&gt;忽略版本匹配
&lt;/h3&gt;&lt;p&gt;composer可以设置忽略版本匹配，命令是：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer install --ignore-platform-reqs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;或者&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer update --ignore-platform-reqs
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;再次执行composer命令可以正常安装包了&lt;/p&gt;
&lt;p&gt;参考网址：&lt;a class="link" href="https://learnku.com/composer/wikis/30594" target="_blank" rel="noopener"
 &gt;https://learnku.com/composer/wikis/30594&lt;/a&gt;&lt;/p&gt;</description></item><item><title>PHP 之 Composer 的 NpmRepository错误</title><link>https://zhangdapeng.dev/p/php-zhi-composer-de-npmrepository-cuo-wu/</link><pubDate>Thu, 03 Jul 2025 11:07:33 +0000</pubDate><guid>https://zhangdapeng.dev/p/php-zhi-composer-de-npmrepository-cuo-wu/</guid><description>&lt;p&gt;最近进行了一次composer的update操作。
然后在我自己的项目里面运行了。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer install
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;的操作，结果出现了很多的错误以前从未见过。&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;Class Fxp\Composer\AssetPlugin\Repository\NpmRepository does not exist&lt;/p&gt;
&lt;p&gt;The &amp;ldquo;yiisoft/yii2-composer&amp;rdquo; plugin requires composer-plugin-api 1.0.0, this &lt;em&gt;WIL L&lt;/em&gt; break in the future and it should be fixed ASAP (require ^1.0 for example).&lt;/p&gt;
&lt;p&gt;[ReflectionException] Class Fxp\Composer\AssetPlugin\Repository\NpmRepository does not exist&lt;/p&gt;
&lt;p&gt;[ErrorException]&lt;/p&gt;
&lt;p&gt;Declaration of Fxp\Composer\AssetPlugin\Repository\AbstractAssetsRepository::w hatProvides() should be compatible with Composer\Repository\ComposerRepository:: whatProvides(Composer\DependencyResolver\Pool $pool, $name, $bypassFilters = fal se)&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;解决方案就是：更新你的 &lt;code&gt;fxp/composer-asset-plugin&lt;/code&gt;:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;php composer.phar global update fxp/composer-asset-plugin --no-plugins
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;如果还是不行的话，可以试试下面这个&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;composer global require fxp/composer-asset-plugin --no-plugins
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item></channel></rss>