如何在不编写新函数的情况下从另一个文件调用变量

时间:2014-10-30 20:07:42

标签: php function

如何从另一个文件中调用变量?函数是否可以返回5个值?在我的function.php文件中,我在不同的变量中获取了很多值。例如,让我们看下面的功能
Function.php文件

function getID($url)
{
  global $link;
  $ch = curl_init("http://example.com/?id=".$url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $raw = curl_exec($ch);
  curl_close($ch);
  $data = json_decode($raw);
  $id=$data->id;
  $cname=$data->name;
  $info=$data->client_info;
  $up=$data->voteup;
  $cat=$data->category;

  return $id;
}

index.php文件

  $myid=getID($url);
  echo "My ID : " . $myid;  -->This is working but not the below four....
  echo "Client Name : "
  echo "Information : "
  echo "Up Votes    : "
  echo "Category    : "

我不想将所有内容保存在一个文件中。在index.php文件中,我还想在'myid'下输出'cname','info','up','cat'值。我正在考虑制作4个不同的函数,并在index.php文件中逐个获取它们。有没有更好的方法,而不是只返回$ id,getID函数也可以返回其他四个参数?请指教。

2 个答案:

答案 0 :(得分:3)

返回数据,因为数组是一个选项

function getID($url)
{
global $link;
$ch = curl_init("http://example.com/?id=".$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
$raw = curl_exec($ch);
curl_close($ch);
//return the $raw json data as associative array
return json_decode($raw,true);
}

$myinfo=getID($url);
echo "My ID : " . $myinfo['id'];
echo "Client Name : " . $myinfo['client_info'];

等...

答案 1 :(得分:2)

只需返回您已有的对象

function getID($url)
{
  $ch = curl_init("http://example.com/?id=".$url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
  $raw = curl_exec($ch);
  curl_close($ch);
  return json_decode($raw);
}

然后调用

$myid = getID($url);
echo "My ID : " . $myid->id;
echo "Client Name : " . $myid->name;
// etc