Array( [head] => Array ( [cmd] => 105 [appKey] => 53 [reqSerialNo] => [version] => [ctalkId] => 1 [seqNo] => 1 [seqCnt] => 1 [retCode] => 0 [retStr] => OK ) [respInfo] => Array ( [userInfos] => Array ( [0] => Array ( [userIdinfo] => Array ( [uuid] => 100000124 [type] => 0 [id] => 100000124 ) [userKeyInfos] => Array ( [1] => Array ( [value] => 100000124 [valueName] => sdkUserPriId [valueKeyType] => 1 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) [2] => Array ( [value] => 张尼玛 [valueName] => nickName [valueKeyType] => 2 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) [3] => Array ( [value] => [ { "bigKey" : "", "bigUrl" : "group2/M00/00/05/wKgBC1TAV06BS21_AABoZKLBGRM281.png", "smallKey" : "", "smallUrl" : "group2/M00/00/05/wKgBC1TAV07RoHGEAAAXAgS_rVM330.png" }] [valueName] => head [valueKeyType] => 3 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) [5] => Array ( [value] => 1 [valueName] => gender [valueKeyType] => 5 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) [25] => Array ( [value] => 0 [valueName] => lastUpdateTime [valueKeyType] => 25 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) [71] => Array ( [value] => 2 [valueName] => servercode [valueKeyType] => 71 [accessLvl] => 0 [reserveValue] => Array ( ) [reserve] => Array ( ) ) ) [userInfoReserve] => Array ( ) ) ) ))
function arr_foreach ($arr) { static $data; if (!is_array ($arr)) { return $data; } foreach ($arr as $key => $val ) { if (is_array ($val)) { arr_foreach ($val); } else { //$data[$key]=$val; $data[] = $val; } } return $data; } $res=arr_foreach($result ); print_r($res);
助けてください。問題が見つかりました。つまり、このメソッドがトラバースしているとき、複数のユーザーを返すと、すべて配列で表示され、ID が下がります。
誰も、テクノロジーは素晴らしいです。
これは 4 次元を超える配列です。どうしますか?
例のコードによると、出力は 1 次元配列です。これは需要ですか?
これは 4 次元を超える配列です。どうしますか?
例のコードによると、出力は 1 次元配列です。これは需要ですか?
userKeyInfos キーの下のコンテンツを取得しますか?
コードが必要な場合は、元の配列の var_export 出力結果を提供してください。
userKeyInfos キーの下のコンテンツを取得しますか?
コードが必要な場合は、元の配列の var_export 出力結果を提供してください
$new_arr = array(); foreach ($result['respInfo']['userInfos'] as $k => $a) { foreach ($a['userKeyInfos'] as $v) { $new_arr[$k][$v['valueName']] = $v['value']; } } print_r($new_arr);
Array( [0] => Array ( [sdkUserPriId] => 100000124 [nickName] => 张尼玛 [head] => [ { "bigKey" : "", "bigUrl" : "group2/M00/00/05/wKgBC1TAV06BS21_AABoZKLBGRM281.png", "smallKey" : "", "smallUrl" : "group2/M00/00/05/wKgBC1TAV07RoHGEAAAXAgS_rVM330.png" }] [gender] => 1 [lastUpdateTime] => 0 [servercode] => 2 ) [1] => Array ( [sdkUserPriId] => 100000125 [nickName] => 100000125 [head] => [ { "bigKey" : "", "bigUrl" : "group1/M00/00/1D/wKgBeVUTdUCRpZD9AAF6ty8lLh4759.png", "smallKey" : "", "smallUrl" : "group1/M00/00/1D/wKgBeVUTdUDyBV08AAAKBhUiAA8391.png" }] [gender] => 0 [lastUpdateTime] => 0 [servercode] => )
解決しました。