大致的思路是這樣的:

創(chuàng)新互聯(lián)公司-成都網(wǎng)站建設(shè)公司,專注成都做網(wǎng)站、成都網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷推廣,申請(qǐng)域名,網(wǎng)絡(luò)空間,成都網(wǎng)站托管有關(guān)企業(yè)網(wǎng)站制作方案、改版、費(fèi)用等問題,請(qǐng)聯(lián)系創(chuàng)新互聯(lián)公司。
1.
通過微信的開放API獲取到二維碼,當(dāng)然自己生成也是可以的
2.
用戶掃描二維碼后進(jìn)入到一個(gè)連接下,這個(gè)連接中的代碼是使用開放API獲取用戶個(gè)人信息
只要去請(qǐng)求開放API的獲取個(gè)人信息接口,微信或自動(dòng)跳轉(zhuǎn)到讓用戶授權(quán)給你的
微信公眾號(hào)
的界面,用戶授權(quán)以后你就可以顯示他的個(gè)人信息了
在剛?cè)胧諴HP的時(shí)候,經(jīng)理讓我自己做一個(gè)文章的管理系統(tǒng)為了方便管理微信端發(fā)的消息。除了簡(jiǎn)單的添加分類、管理分類、添加文章、管理文章,還有一個(gè)功能就是要從微信文章網(wǎng)址中拿到網(wǎng)址上的標(biāo)題、作者以及發(fā)表時(shí)間。
一、 頁面使用ajax
把微信頁面的地址放在文章鏈接里,點(diǎn)擊獲取,調(diào)用ajax。不說了,直接上代碼td文章鏈接:/td
tdinput type="text" id="url" name="url" size="50" input type="button" value="獲取" onclick="javascript:return getMsg()"http://td
復(fù)制代碼
function getMsg(){
var title=document.getElementById("title");var url=document.getElementById("url").value;var typeId;
var writer=document.getElementById("writer");var addtime=document.getElementById("addtime");//alert(url);die;
$.ajax({
url: '/addarticle/getmsg',
type: 'POST',
dataType:'text',
data: 'url='+url,
success: function(data)
{
var str=data;
var arr=new Array();//0是標(biāo)題;1是時(shí)間;2是作者var result=str.split("");
for(var i=0;iresult.length;i++){
arr.push(result[i]);
}
title.value=arr[0];
addtime.value=arr[1];
writer.value=arr[2];
//alert(arr[0]);
},
error: function()
{
alert('請(qǐng)求錯(cuò)誤');
}
});
}
復(fù)制代碼
二、在php頁面利用file_get_content函數(shù)獲取頁面全部信息該函數(shù)是將頁面中的所有內(nèi)容寫在字符串中,想要拿到指定的內(nèi)容,就用到了正則匹配。正則表達(dá)式的相關(guān)知識(shí)就不說了,直接說今天的內(nèi)容。將結(jié)果放在同一個(gè)變量中,用特殊符號(hào)隔開,以便在視圖頁面進(jìn)行分割并寫入文本框內(nèi)。
復(fù)制代碼
public function actionGetmsg(){
$result=array();
$url=$_POST["url"];
$wx_content=file_get_contents($url);//利用函數(shù)獲得網(wǎng)址的內(nèi)容$title_html="/.*?title(.*?)\/title.*?/";//正則匹配文章的標(biāo)題preg_match($title_html, $wx_content, $matchs);echo $matchs[1]."";
//echo 'pre';var_dump($matchs);echo '/pre';//正則匹配文章的添加時(shí)間
$creattime_html="/.*?em id=\"post-date\" class=\"rich_media_meta rich_media_meta_text\"(.*?)\/em.*?/";preg_match($creattime_html, $wx_content, $matchs);// echo 'pre';var_dump($matchs);echo '/pre';echo $matchs[1]."";
//正則匹配文章的作者
$wxh_html="/.*?a class=\"rich_media_meta rich_media_meta_link rich_media_meta_nickname\" href=\"##\" id=\"post-user\"(.*?)\/a.*?/";preg_match($wxh_html, $wx_content, $matchs);// echo 'pre';var_dump($matchs);echo '/pre';echo $matchs[1]."";
}
復(fù)制代碼
三、同時(shí)大家可以看到圖片上時(shí)間那一欄,可以自己添加這里使用的是一個(gè)小控件,也就是一個(gè)js,WdatePicker.js。
首先在頁面的頭部引入js控件,在文本框中寫下以下代碼,點(diǎn)擊文本框就可以看到日歷形式的出現(xiàn),選擇你需要的日期。
tdinput type="text" name="newsTime" id="addtime" onclick="WdatePicker({dateFmt:'yyyy:MM:dd HH:mm:ss'})" placeholder="請(qǐng)輸入文章發(fā)布時(shí)間" / /td
具體的WdatePicker.js可以在網(wǎng)上找一個(gè)。
用curl
GET方法:
??//初始化
$ch?=?curl_init();
//設(shè)置選項(xiàng),包括URL
curl_setopt($ch,?CURLOPT_URL,?"");
curl_setopt($ch,?CURLOPT_RETURNTRANSFER,?1);
curl_setopt($ch,?CURLOPT_HEADER,?0);
//執(zhí)行并獲取HTML文檔內(nèi)容
$output?=?curl_exec($ch);
//釋放curl句柄
curl_close($ch);
//打印獲得的數(shù)據(jù)
print_r($output);
POST方法:
$url?=?"";
$post_data?=?array?("username"?=?"bob","key"?=?"12345");
$ch?=?curl_init();
curl_setopt($ch,?CURLOPT_URL,?$url);
curl_setopt($ch,?CURLOPT_RETURNTRANSFER,?1);
//?post數(shù)據(jù)
curl_setopt($ch,?CURLOPT_POST,?1);
//?post的變量
curl_setopt($ch,?CURLOPT_POSTFIELDS,?$post_data);
$output?=?curl_exec($ch);
curl_close($ch);
//打印獲得的數(shù)據(jù)
print_r($output);
步驟一:
獲取用戶信息需要”通過微信認(rèn)證“ 請(qǐng)確認(rèn)你是否有相應(yīng)權(quán)限
步驟二:
獲取用戶基本信息,必須提供ACCESS_TOKEN和openid 兩個(gè)參數(shù);id=mp1421140839
//正常情況下,微信會(huì)返回下述JSON數(shù)據(jù)包給公眾號(hào):
{
"subscribe":?1,?
"openid":?"o6_bmjrPTlm6_2sgVt7hMZOPfL2M",?
"nickname":?"Band",?
"sex":?1,?
"language":?"zh_CN",?
"city":?"廣州",?
"province":?"廣東",?
"country":?"中國",?
"headimgurl":??"
eMsv84eavHiaiceqxibJxCfHe/0",
"subscribe_time":?1382694957,
"unionid":?"?o6_bmasdasdsad6_2sgVt7hMZOPfL"
"remark":?"",
"groupid":?0,
"tagid_list":[128,2]
}
步驟三:
獲取access_token 前需要配置IP白名單和相應(yīng)設(shè)置讓其有正確的訪問權(quán)限
獲取access_token 需要三個(gè)參數(shù)
以下是成功案例:
;id=mp1421140183
微信服務(wù)器post數(shù)據(jù)是后臺(tái)進(jìn)行的,你直接print并截?cái)嗍强床坏叫畔⒌模硗鈖ost過來的數(shù)據(jù)是特殊的xml格式,可以寫入日志查看
給你簡(jiǎn)單介紹幾個(gè)吧
一、file_get_contents函數(shù)
$content = file_get_contents("URL");//URL就是你要獲取的頁面的地址
二、利用curl擴(kuò)展
代碼如下:
function getCurl($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//不輸出內(nèi)容
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$result = curl_exec($ch);
curl_close ($ch);
return $result;
}
PS:需要安裝PHP的curl擴(kuò)展
當(dāng)前題目:php取微信數(shù)據(jù) php獲取微信小程序用戶信息
網(wǎng)站鏈接:http://chinadenli.net/article18/hppcgp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、Google、企業(yè)建站、網(wǎng)站策劃、、網(wǎng)站收錄
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)