原本已经用 docker 部署好了 PHP的 container,以及 composer 的依赖。
最近需要更新一个依赖,执行 “`dcoker-compose exec php composer require “myTeam/xxxx”“`却报:
[runtimeexception]Failed to execute git clone --mirror "git@gitlab.com:XXXXXX" "~/.cache/composer/vcs/bitbuc……
一、安装 Composer
Composer 官网 https://getcomposer.org/
安装方式1:
curl -sS https://getcomposer.org/installer | php
安装方式2:
php -r "readfile('https://getcomposer.org/installer');" | php
中国全量镜像 https://www.phpcomposer.com/
安装方式3:
php -r "copy('https://install.phpcom……
0.0.0.0 account.jetbrains.com0.0.0.0 www.jetbrains.com
2018.03版本
第1个:
K71U8DBPNE-eyJsaWNlbnNlSWQiOiJLNzFVOERCUE5FIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYXNzaWduZWVOYW1lIjoiIiwiYXNzaWduZWVFbWFpbCI6IiIsImxpY2Vuc2VSZXN0cmljdGlvbiI6IkZvciBlZHVjYXRpb25hbCB1c2Ugb25seSIsImNoZWNrQ29uY3VycmVudF……
DB::statement("ALTER TABLE wechat_forms CHANGE expired_at expired_at TIMESTAMP NULL;");
Only the following column types can be "changed": bigInteger, binary, boolean, date, dateTime, dateTimeTz, decimal, integer, json, longText, mediumText, smallInteger, string, text, time, un……
最近用PHP写了一个爬虫,抓取某个接口返回的json数据,过程中遇到不少问题,在此整理一下。
用浏览器一直都可以正常获取,所以记录curl模拟浏览器请求失败的原因和解决思路。
【问题】GET请求方式,和浏览器一样的url、header(但无cookie),却一直请求失败
【原因】接口返回的是一个空responseHeader、responseBody的……
【背景】
在使用OO(object oriented,面向对象)模式开发时,我们通常把一个class单独放在一个文件里,并以类名作为php文件名,这样方便管理维护。
在PHP5之前,使用一个类前总是需要将它所在的文件include/require进来,如果使用该类的地方较多或某个文件引用的类较多时,就得不停地手动include/require,这样不仅麻烦……
有时我们需要查看一个加密混淆之后的PHP文件的源码,这时就需要对它进行解密了。
在PHP5.4及之前的版本,基本上都可以解密。可使用“黑刀DeZender”进行解密,或在线解密。
在PHP5.5、PHP5.6中,基本上只能在线解密了,而且不一定解密得了,特别是5.6多了授权解密等安全限制。
Zend Guard Run-time support missing,即,运行时找不到Zend Guard的支持。Zend Guard是一个对PHP源码进行加密保护的插件,运行时需要安装它的解析插件——Zend Guard Loader,如果当前环境没有安装该解析插件,就会出现这样的错误。
【确认问题】
如果你打开对应的PHP文件的话,会发现里面有正常的PHP标签——<?php ?>……
Only variables should be passed by reference,即该方法的变量(variables )只能通过引用(reference)来传递。一般是传参导致的错误。
常见情况,直接拿explode()的结果去传入给某个方法,而这个方法的变量(variables )只能通过引用(reference)来传递。
例如,
$date = '2018-04-17……
【方法一】 助手类
class WxpayRefundNotifyHelper
{
private $app_key;
public function __construct($app_key)
{
$this->app_key = $app_key;
}
public function decryptMessage($message)
{
if (empty($this->app_key) || empty($message)) {
return null;
……