手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜Qcloud , 注册 | 登陆
浏览模式: 标准 | 列表分类:PHP

[置顶] composer初装需要执行的几个命令

 因为我一直用Yii2框架。所以安装composer和安装后需要执行的命令如下,【纯记录】

1、下载composer
composer下载(具体详细的还需要:https://getcomposer.org/download/ ,必须 sha 还是经常会变的,鉴于可能经常会变所以注释掉了第二行)
  1. php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"  
  2. #php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  3. php composer-setup.php  
  4. php -r "unlink('composer-setup.php');"  
  5.   
2、mv composer.phar /usr/local/bin/composer  #移到系统目录,变成全局命令
3、composer config -g repo.packagist composer https://packagist.phpcomposer.com    #国内源
    phpcomposer好象垮了!
    更新为:composer config -g repo.packagist composer https://packagist.laravel-china.org 
4、composer global require hirak/prestissimo   #多线程
5、composer global require "fxp/composer-asset-plugin:^1.4"   #升级为1.4
6、composer update -vvv  
 
就这样了 
 
合并后的命令
XML/HTML代码
  1. php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"      
  2. php composer-setup.php      
  3. php -r "unlink('composer-setup.php');"      
  4. mv composer.phar /usr/local/bin/composer    
  5. composer config -g repo.packagist composer https://packagist.phpcomposer.com      
  6. composer global require hirak/prestissimo     
  7. composer global require "fxp/composer-asset-plugin:^1.4"     
  8. composer update -vvv    
  9. #over    
 
如果采用了git,记得在运行完clone后:git config credential.helper store  ,可以将当前用户名和密码存下来(针对HTTP方式,如果是ssh本来就不需要)
 

记录个七牛的小问题

 七牛云 使用sdk 上传图片提示{"error":"key doesn't match with scope"}

偷懒,我用的是Overtrue的qiniu-filesystem的组件。overtrue大家应该知道,写easywechat的。用了qiniu-filesystem的组件后,生成token就方便了:Storage::disk('qiniu')->getUploadToken();就OK了。
这种是默认情况,啥都OK。配合qiniu-js的upload方法就行。 qiniu.upload(file, filename, uptoken, putExtra, config),也容易解释:file对象,文件名。uploadToken,putExtra是否指定原文件,config:配置,是否用CDN域名等
 
但如果生成token的时候,指定prefix了。那名qiniu的这个upload方法中的filename就要注意一下。必须是带上prefix的全文件名(基于overtrue的插件)
 
而且php的方法也要改。如果你直接定义scope为"bucket:prefix",你会发现。。。无效。只能用全名才OK。
记录一下,也算踩了个小坑
 

php:str_pad and javascript :padStart

 php 要在字符串前后补位很容易 。str_pad就行了。有PAD_LEFT和PAD_BOTH以及PAD_RIGHT等。但JS就没有这么方便了,虽然在现代浏览器中已经支持padStart这样的用法。

padStart(length , padString)。然而用起来还是要注意:1、只支持String的补位。最好是 val.toString().padStart(10,'0')。2、旧版浏览器不支持。。。比如:微信PC版内置的浏览器就不支持(mac 支持)。

只能临时写个方法。。

String.prototype.padStart = function(length, padString) {
    var str = this;
    while (str.length < length)
          str = padString + str;
    return str;
}

然后就可以用了。

guzzlehttp 2、3事

 guzzlehttp库应该算是目前用的较多的HTTP请求库了吧。早些年我是一直用Requests,这两年都换成guzzle了。在使用代理 的时候要注意几点小事(各人的机器情况不一样)

1、如果用了v2ray在本地做代理 ,你使用guzzlehttp的时候。不能用 127.0.0.1 ,而是要用局域网的IP。嗯,自己写个脚本获取一下吧

2、sockets5的话,不能直接写socks,而是:socks5h

3、tcp这种好象现在不能用了。tcp://,会报协议错误。。根据实际情况换吧。如果是http就直接写http://xxxxx:port即可

记录一下,之所以用,是因为本地调用微信接口一直报IP不在白名单内,只有用代理 的方式,然后将代理IP加到白名单,也算一劳永逸吧

Composer 国内镜像增加

 自从 laravel-china他们发了牢骚,说是镜像被人恶意引用,自己找不住了。果然这两天国内又增加了两个

1、https://mirrors.cloud.tencent.com/composer/ ,用法:

composer config -g repos.packagist composer https://mirrors.cloud.tencent.com/composer/
 

2、https://mirrors.aliyun.com/composer/index.html,用法:

composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
 

还没有测试,之前腾讯的我试过不行,所以继续 在用laravel-china的。不知道阿里怎么样。

 

#更新

腾讯云的还是不要用吧,我用composer update的时候,报错:https://mirrors.cloud.tencent.com/composer/p/provider-2013%2487216f389bc25a4f5d03d0cfb1a56cff043b3b3d9cb8faf4

  1214c3001d51cb37.json 说是这个文件签名不符:The contents of https://mirrors.cloud.tencent.com/composer/p/provider-2013%2487216f389bc25a4f5d03d0cfb1a56cff043b3b3d9cb8faf4

  1214c3001d51cb37.json do not match its signature.用浏览器打开一看,我靠,文件404,也不知道他是怎么做镜像的。哎。(放弃吧)

看了下laravel-china,他们申请不再提供了(即将)。然后他们也提供了一些镜像地址(网址是:https://learnku.com/composer/wikis/30594),比如:

安畅网络镜像

镜像类型:全量镜像
更新时间:1 分钟
镜像地址:https://php.cnpkg.org
官方地址:https://php.cnpkg.org/
镜像说明:此 Composer 镜像由安畅网络赞助,目前支持元数据、下载包全量代理。

 

交通大学镜像

镜像类型:非全量镜像
镜像地址:https://packagist.mirrors.sjtug.sjtu.edu.c...\
官方地址:https://mirrors.sjtug.sjtu.edu.cn/packagis...\
镜像说明:上海交通大学提供的 composer 镜像,稳定、快速、现代的镜像服务,推荐使用。

---EOF--

感谢这些平台为PHP开源世界做的贡献,就是不知道PHP还能走多远,或许下一步就是GO或者PYthon了。如果PHP只是用来做API(做CRUD),那么go和python短时间内肯定还不如php好用,但如果是做其他,比如爬虫类的,PHP就远远不行了(不是不能做,而且总差那么一口气,虽然我们在最早实现了PHP的工业化采集器,但真要用来做大型的,还是不够),其实这些年已经尝试半工业化了,比如实现PHP采集Server,队列,远程扔个规则上来,接下来就自动处理,多台机器读取队列等等。总还是没有象其他语言那样(我看情况是不是整理整理放出来,代码很垃圾)

Tags: composer

Records:61312345678910»