[英]Read and store variables from JSON data in PHP
我有以下ID號為JSON的數據。 在末尾:
[{"Name":"malek","Email":"malek@bar.com","Donation":"5","Type":"Cash","id":0},{"Name":"donnie","Email":"donnie@bar.com","Donation":"6","Type":"Cheque","id":1},{"Name":"ramanuj","Email":"ramanuj@bar.com","Donation":"3","Type":"NEFT","id":2},{"Name":"neha","Email":"neha@bar.com","Donation":"2","Type":"RTGS","id":3},{"Name":"aasha","Email":"aasha@bar.com","Donation":"1","Type":"CC","id":4},{"Name":"zia","Email":"zia@bar.com","Donation":"6","Type":"PayU","id":5},{"Name":"John","Email":"John@bar.com","Donation":"7","Type":"Instamojo","id":6}]
我要特別獲取John的Email:並將其存儲在變量$ johnemail中,以便$ johnemail =='John@bar.com'
最簡單的方法是什么?
使用json_decode
, array_column
(從PHP 5.5開始可用)和array_search
函數的簡單解決方案:
$json_data = '[{"Name":"malek","Email":"malek@bar.com","Donation":"5","Type":"Cash","id":0},{"Name":"donnie","Email":"donnie@bar.com","Donation":"6","Type":"Cheque","id":1},{"Name":"ramanuj","Email":"ramanuj@bar.com","Donation":"3","Type":"NEFT","id":2},{"Name":"neha","Email":"neha@bar.com","Donation":"2","Type":"RTGS","id":3},{"Name":"aasha","Email":"aasha@bar.com","Donation":"1","Type":"CC","id":4},{"Name":"zia","Email":"zia@bar.com","Donation":"6","Type":"PayU","id":5},{"Name":"John","Email":"John@bar.com","Donation":"7","Type":"Instamojo","id":6}]';
$search_name = 'John';
$items = json_decode($json_data, TRUE);
$emails = array_column($items, 'Name', 'Email'); // email is good for using as array key, as it should be unique
$johnemail = array_search($search_name, $emails); // note that this is case-sensitive search
print_r($johnemail); // "John@bar.com"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.