php中的映射动态变量

php中的映射动态变量,php,rest,Php,Rest,如何从RESTAPI调用为元素赋值 假设我在api调用中有一个4的结果echo$resultArray[0]['number'][0]['value']。然后我想给这个结果分配相应的值,所以每当我发出下一个调用时,我应该得到House作为结果 Assigning string values: 4 = House 5 = Bedroom 更新: [{"number":[{"value":4}],"uuid":[{"value":"123-123-123-123-123"}],"v

如何从RESTAPI调用为元素赋值

假设我在api调用中有一个
4
的结果
echo$resultArray[0]['number'][0]['value']。然后我想给这个结果分配相应的值,所以每当我发出下一个调用时,我应该得到
House
作为结果

Assigning string values:
    4 = House
    5 = Bedroom
更新:

[{"number":[{"value":4}],"uuid":[{"value":"123-123-123-123-123"}],"vid":[{"value":123}],"langcode":[{"value":"en"}],"type":[{"target_id":"test","target_type":"test_type","target_uuid":"456-456-456-456-456"}],"revision_timestamp":[{"value":123345678}],"revision_uid":[{"target_id":1,"target_type":"user","target_uuid":"321-321-321-321-321","url":"\/user\/1\/stream"}],"revision_log":[],"status":[{"value":false}],"title":[{"value":"John Test Patch"}]}]

维护一个关联数组以存储sting和value。 匹配关联数组中的结果以显示所需的值



    $mapArray = array('4'=>'home','5'=>'office');
    $response_decoded=json_decode($response,true); //$response is json from api call.
    if(isset($mapArray[$response_decoded['number']['0']['value']])
    {
        $response_decoded['number']['0']['value']=$mapArray[$response_decoded['number']['0']['value']];
}
    else
    {
        echo "value not present in array";
    }
 

假设您已经将$resultArray解码为api的响应,要使用php保存它,请尝试以下方法:

if(!empty($resultArray)){
foreach($resultArray as $key => $object){
    if($object->number[0]->value ==4){
        $object->number[0]->value= "house";
    }
    else if($object->number[0]->value ==5){
      $object->number[0]->value= "Bedroom";
    }
     // if you have another use case  add them after here 
    /* else if(){
     }
     .
     .
     else(){
     }
     */
}
}

这对你来说应该很有用:)

你能解释更多吗?你试过这个吗:$resultaray[0]['number'][0]['value']=4;你在找这个吗?或者做一个测试,比如:($resultArray[0]['number'][0]['value']==“house”){$resultArray[0]['number'][0]['value']]=4;}可能我理解你在找什么,所以让我们假设你有一个从api返回的对象列表,如果某些条件是真的,你想分配一些值。。。如果我是对的,你能给我看看$resultArray结果吗。然后我可以拿着这个治疗在描述中打印你的$resultArray,然后我给你解决方案。你能不能在你所指的内容中添加示例代码来更具体一些?
$var = $resultArray[0]['number'][0]['value'];
switch($var){
 case 0:
  $varString = "text"; 
  break;

case 4: 
 $varString = "House";
 break;

case default:
 $varString = "not 0 or 4"; 
 break; 
}