我正在使用Symfony 1.2.7和Doctrine 1.1。我有$activities (sfOutputEscaperIteratorDecorator - Doctrine_Collection)
。我使用ESC_SPECIALCHARS方法在settings.yml上轉義所有內容。如果我不逃避它,它會毫無問題地工作,所以我認爲這個問題與sfOutputEscaperIteratorDecorator
有關。foreach返回比count更多的元素()
如果我做echo count($activities)
它返回我
我刪除幾個要素:
foreach($activities as $key => $a){
if(...){
$activities->remove($key);
}
}
然後,如果我這樣做echo count($activities)
它返回我
然而,當我通過迭代元素,我仍然有相同的5個元素:
foreach($activities as $activity){
..
}
任何想法?
謝謝!
雖然它不是技術上的答案,也啓發了我採取一種新的方法。看來sfOutputEscaperIteratorDecorator集合是隻讀的,所以我不能刪除元素(儘管它的計數器似乎以不同的方式工作)。我現在做的是將元素添加到不同的數組,然後unset()我不想要的元素。謝謝! – fesja 2010-07-27 11:15:41