2013-05-14 25 views
0

我有這樣的代碼視頻ID,以陣列,陣列具有零項

編輯:這個工程現在

$eigenesVideoId = array(); 
$eigenesVideoTitel = array(); 
$eigenesVideoTags = array(); 
$counter = 0; 
function printEntireFeed($videoFeed, $counter) 
{ 
global $eigenesVideoId; 
global $eigenesVideoTitel; 
global $eigenesVideoTags; 
global $counter; 
foreach($videoFeed as $videoEntry) 
{ 
    if ($videoEntry->isVideoPrivate() != "1") 
    { 
    $eigenesVideoId[$counter] = $videoEntry->getVideoId(); 
    $eigenesVideoTitel[$counter] = $videoEntry->getVideoTitle(); 
    $eigenesVideoTags[$counter] = implode(",", $videoEntry->getVideoTags()); 
    $counter++; 
    } 
} 

try 
{ 
    $videoFeed = $videoFeed->getNextFeed(); 
} 
catch (Zend_Gdata_App_Exception $e) 
{ 
    return; 
} 

if ($videoFeed) { 
    printEntireFeed($videoFeed, $counter); 
} 
} 

printEntireFeed($videoFeed, 1); 

echo count($eigenesVideoId); 

應該把每個視頻不是私有到一個數組。但數組總是空的,count總是零。

如何更改此遞歸函數(或外部數組變量)以使數組填充並使其後可訪問。

回答

1

要使用$ videoFeed-> getNextFeed(),我認爲您必須首先有一個初始提要。

另外,你正在從函數內部填充數組變量;但要使用函數外部的變量,必須在函數中聲明它們爲GLOBAL。否則它們是LOCAL。 (或者將它們作爲參考傳遞,或者在函數結尾處使用RETURN變量並在每次調用後捕獲它。)

+0

GLOBAL添加使其工作。我編輯了我的主帖。 – 2013-05-14 14:36:04