『壹』 php使用CURL請求https的微信統一下單介面時報錯,同樣的代碼我在另一台機器上運行是正常的
我也遇到了同樣的問題,只要是走微信,偶爾都會請求不到,原來是正常的。今天排查了一天,終於找到了原因所在。
centos原生用的NSS,而不是OpenSSL,curl調用NSS庫請求https時偶爾會出現請求不到的情況。
解決方案:
參考網址:網頁鏈接
按步驟完成後記得重啟 php-fpm和nginx
『貳』 微信公眾發ticket取得二維碼圖並發微信素材獲得media_id..求PHP代碼
private function receiveEvent($object)
{
$contentStr = "";
switch ($object->Event)
{
case "subscribe":
$contentStr = "歡迎 ";
if (isset($object->EventKey)){
$contentStr = "關注二維碼場景 ".$object->EventKey;
}
break;
case "SCAN":
$contentStr = "掃描 ".$object->EventKey;
//要實現統計分析,則需要掃描事件寫入資料庫,這里可以記錄 EventKey及用戶OpenID,掃描時間
break;
default:
break;
}
$resultStr = $this->transmitText($object, $contentStr);
return $resultStr;
『叄』 微信公眾號,長鏈接轉短鏈接,怎麼操作
可以使用電腦版微信進行長鏈接的轉換,步驟如下。
1、首先打開自己的電腦,然後登錄電腦版微信,把微信公眾號的長鏈接復制到微信的文件傳輸。
『肆』 php微信支付rootca.pem怎麼用
classConfig{
/**
*微信相關常量
*/
/**微信appid*/
constWECHAT_APPID='';
/**微信appsecret*/
constWECHAT_APPSECRET='';
/**微信支付證書pem格式*/
constWECHAT_PAY_CERT='D:certapiclient_cert.pem';
/**微信支付證書密鑰pem格式*/
constWECHAT_PAY_KEY='D:certapiclient_key.pem';
/**微信支付CA根證書(用來驗證的網站證書是否是CA頒布)*/
constWECHAT_PAY_ROOTCA='D:cert ootca.pem';
}
/**
*@paramstring$url要打開的地址
*@paramnull$data要post的參數
*@parambool$cert微信支付證書
*@returnmixed|string
*/
publicstaticfunctioncurl($url,$data=null,$cert=false)
{
$curl=curl_init();
curl_setopt($curl,CURLOPT_URL,$url);
curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE);
curl_setopt($curl,CURLOPT_SSL_VERIFYHOST,FALSE);
if($cert===true){
curl_setopt($curl,CURLOPT_SSLCERT,Config::WECHAT_PAY_CERT);
curl_setopt($curl,CURLOPT_SSLKEY,Config::WECHAT_PAY_KEY);
curl_setopt($curl,CURLOPT_CAINFO,Config::WECHAT_PAY_ROOTCA);
}
if(!empty($data)){
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
}
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
$output=curl_exec($curl);
if(curl_errno($curl)){
return'ERROR_200'.curl_error($curl);
}
curl_close($curl);
return$output;
}
curl 是我直接從在用類中截出來的靜態函數,你要是直接調用記得去掉靜態修飾符