第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

從測(cè)試站點(diǎn)返回的 JSON 字符串包含阻止 json_decode 工作的額外字符

從測(cè)試站點(diǎn)返回的 JSON 字符串包含阻止 json_decode 工作的額外字符

PHP
人到中年有點(diǎn)甜 2023-03-04 10:39:36
我正在嘗試了解如何在服務(wù)器之間傳輸數(shù)據(jù)。在線有一個(gè)包含 json 數(shù)據(jù)的測(cè)試 API。我嘗試了以下操作:-    <?php// Initiate curl session in a variable (resource) $curl_handle = curl_init();$url = "http://dummy.restapiexample.com/api/v1/employees"; // website sample API data// Set the curl URL option curl_setopt($curl_handle, CURLOPT_URL, $url);// This option will return data as a string instead of direct output curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, true);// Execute curl & store data in a variable $curl_data = curl_exec($curl_handle);curl_close($curl_handle);// Write the JSON string// echo $curl_data; // the above writes the JSON string ok// Now try decoding to PHP array$character = json_decode($curl_data); echo $character[1]->employee_name; // this throws an error 'Error: Cannot use object of type stdClass as array in C:\wamp64\www\curlex\curlget.php on line 24' ?>返回的字符串包含以下內(nèi)容(為清楚起見,已刪除為 2 個(gè)條目):-    {"status":"success","data":[{"id":"1","employee_name":"Tiger Nixon","employee_salary":"320800","employee_age":"61","profile_image":""},{"id":"2","employee_name":"Garrett Winters","employee_salary":"170750","employee_age":"63","profile_image":""}]}我想 json_decode 由于{"status":"success","data":序言而失敗?請(qǐng)問如何解決?
查看完整描述

3 回答

?
動(dòng)漫人物

TA貢獻(xiàn)1815條經(jīng)驗(yàn) 獲得超10個(gè)贊

你的問題是,你已經(jīng)從函數(shù)中省略了第二個(gè)參數(shù)json_decode(),如果沒有設(shè)置,它將把字符串解析為一個(gè)對(duì)象,而不是一個(gè)數(shù)組。


您可以在此處找到此功能的文檔,在您的情況下,您正在尋找的是參數(shù)assoc。


另一方面,您顯示的示例返回employee_name在另一個(gè)屬性內(nèi)查找的內(nèi)容,而不是在主要屬性(即data)中。


true嘗試作為函數(shù)的第二個(gè)參數(shù)提供:


$character = json_decode($curl_data, true);

echo $character[1]['employee_name'];

但這只有在數(shù)據(jù)示例不準(zhǔn)確的情況下才有效。如果該示例準(zhǔn)確無誤,要獲取employee_name第二個(gè)數(shù)據(jù)元素的 ,請(qǐng)使用:


$character = json_decode($curl_data, true);

echo $character['data'][1]['employee_name'];

注意,php 數(shù)組是從零開始的,所以如果你想從數(shù)組中取出第一個(gè)元素,你應(yīng)該引用它的第 0 個(gè)屬性。


查看完整回答
反對(duì) 回復(fù) 2023-03-04
?
郎朗坤

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊

感謝所有提供幫助的人。我沒有意識(shí)到返回的字符串是一個(gè)二維數(shù)組。我被網(wǎng)站誤導(dǎo)了,它給了我免費(fèi)提供的測(cè)試數(shù)據(jù)的鏈接。



查看完整回答
反對(duì) 回復(fù) 2023-03-04
?
幕布斯6054654

TA貢獻(xiàn)1876條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以像這樣訪問它:


$character = json_decode($curl_data); 

echo $character->data[1]->employee_name; 


查看完整回答
反對(duì) 回復(fù) 2023-03-04
  • 3 回答
  • 0 關(guān)注
  • 129 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)