2011-11-02 37 views
1

我正在使用Wufoo api(https://{subdomain}.wufoo.com/api/v3/forms/{formIdentifier}/entries.{xml|json})尝试将我所有的条目(当前为150左右)作为一个php数组。 Wufoo限制返回到100的条目数。所以现在我有两个php数组,我想将它们连接/组合成一个数组。连接Wufoo API结果

到目前为止的代码:

$api_uri_1 = "https://example.wufoo.com/api/v3/forms/example-form/entries.json?pageStart=0&pageSize=100"; 
$api_uri_2 = "https://example.wufoo.com/api/v3/forms/example-form/entries.json?pageStart=1&pageSize=100"; 

function wufoo_api($api_uri) { 
    $curl = curl_init($api_uri); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($curl, CURLOPT_USERPWD, 'WUFOO-API-KEY-HERE:password'); 
    curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); curl_setopt($curl, CURLOPT_USERAGENT, 'Wufoo Sample Code'); 
    $response = curl_exec($curl); 
    $resultStatus = curl_getinfo($curl); 

    if ($resultStatus['http_code'] == 200) { 
     $results = json_decode($response, true); 
     return $results; 
    } else { 
     $results = 'Call Failed '.print_r($resultStatus); 
     return $results; 
    } 
} 

$result1 = wufoo_api($api_uri_1); 
$result2 = wufoo_api($api_uri_2); 

我已经试过,也没有工作

$all_results = array_merge($result1, $result2); 

和这样的事情

$all_results = $result1; 
$all_results += $result2; 

如何CA n个I串联/提前任何帮助

更新相结合RESULT1和RESULT2

感谢:什么工作

感谢Ben我意识到我需要使用数组键为目标的部分我需要的阵列。

$all_results = array_merge($result1['Entries'],$result2['Entries']); 
+0

请参阅下面我的答案中的意见,我不认为你的更新是有道理的.. – Ben

+0

我纠正它,谢谢本。 – michaelespinosa

回答

2

json_decode的结果将包含根元素(根据api的条目)。

您将通过$ RESULT1 [ '项']访问条目的阵列,所以来连接的条目,你需要做这样的事情:

$all_results = array_merge($result1['Entries'],$result2['Entries']); 

$all_results = $result1['Entries']; 
$all_results += $result2['Entries']; 

也为失败的情况下,它应该是

$results = 'Call Failed '.print_r($resultStatus,true); 

(否则,你输出print_r的结果,而不是返回它)

+0

谢谢Ben!我需要的**键**是将'['Entries']'添加到我的变量中。结果是'array_push($ result1 ['Entries'],$ result2 ['Entries'] [0]);'再次感谢! – michaelespinosa

+0

@michaelespinosa'array_push($ result1 ['Entries'],$ result2 ['Entries'] [0])'只会将$ result2中的_first_条目追加到$ result1的条目中......这听起来不像你想要的做你的绝对正确 – Ben

+0

。谢谢 – michaelespinosa