我有一个从外部API中提取数据的脚本。输出示例如下。
[{"id": "579144bbfbd8f54f53f5394b", "username": "test1", "type": "1", "email": "new_user@email.com", "status": on},{"id": "afadfatqwertqr", "username": "test2", "type": "1", "email": "new_user2@email.com", "status": on}]
我试图仅从字符串中提取id以将其设置为变量。它必须是用户名特定的,但任何支持将不胜感激。我提前谢谢了!#/ p>
答案 0 :(得分:1)
$usernameToFind = 'something';
然后你需要调用你的api get JSONResponse;
$arr = json_decode($yourJSON, true);
然后您的$arr
将包含所有数据作为对象数组。你可以访问如下:
$username = array();
$len = count($arr);
for($i = 0; $i < $len; $i++){
$id = $arr[$i]["id"];
$uname = $arr[$i]["username"];
$username[$uname] = $id;
}
在此循环之后,您可以根据该数组中存在usernameToFind
的用户名获取您要查找的任何ID。要检查您是否可以使用:
if(isset($username[$usernameToFind])){
$idToFind = $username[$usernameToFind];
}else{
echo "this user doesn't exist";
}