功能的多个响应

时间:2010-10-07 23:35:30

标签: php json

我试图让这个函数在数组中返回多个结果(?)。

所以基本上不是为了不同的结果而多次运行lookup("354534", "name");lookup("354534", "date");,我怎么能同时返回两个名字和&该函数的日期,然后回显它所以我只需要使用该函数一次?

    function lookup($data, $what)
 {
  $json = file_get_contents("http://site.com/".$data.".json");
  $output = json_decode($json, true);  
  echo $output['foo'][''.$what.''];
 }

谢谢!

2 个答案:

答案 0 :(得分:0)

让函数返回整个JSON结果:

function lookup($data)
{
    $json = file_get_contents("http://site.com/".$data.".json");
    $output = json_decode($json, true);  
    return $output["foo"];
}

然后你可以做

$result = lookup("354534");

echo $result["name"];
echo $result["date"];

这是一个好主意,因为否则,你会多次(慢)file_get_contents请求,这是你想要避免的。

答案 1 :(得分:0)

使用echo替换函数中的return,并返回整个数组:

function lookup($data){
  ...
  return $output;
  }

...

$results = lookup($someData);
echo $results['name'] . $results['date'];