2014-06-12 160 views
0

在第一次循環迭代中,我希望設置$parentId,這是從查詢設置到數據庫。保留循環中的變量值?

然後,我希望保留第一次循環迭代中的$parentId的值,以用於所有後續循環迭代。

我試過這個,但它踢了一個error - unexpected $parentId

解決這個問題的正確方法是什麼?

foreach (Config::get('wdt') as $width) { 

    $query = Asset::create(array('title' => $data["title"])); 
    !isset($parentId)$parentId = $query->id(); 
} 
+1

嘗試增加一個「如果」在那裏...'如果(!isset($ parentID))$ parentID = $ query-> id();' – Majenko

+1

是啊不知道這是有效的PHP?如果是這樣,它就像罪一樣醜陋。 –

回答

1

你可以嘗試使用三元操作符:

foreach (Config::get('wdt') as $width) { 

    $query = Asset::create(array('title' => $data["title"])); 
    isset($parentId) ? NULL : $parentId = $query->id(); 
} 
0

你的問題是有沒有條件。初始化也更好。測試:

$parentId = null; 
foreach (Config::get('wdt') as $width) { 
    $query = Asset::create(array('title' => $data["title"])); 
    ($parentId === null) ? $parentId = $query->id() : null; 
} 
0

我建議你你循環之前初始化變量「的parentId」,並改變對相互作用的條件,請參閱:

$parentId = NULL; 
foreach (Config::get('wdt') as $width) { 

    $query = Asset::create(array('title' => $data["title"])); 
    ($parentId == NULL) ? $parentId = $query->id() : $parentId; 
}