foreachとsimpleXMLでXMLのデータを順繰りに見ていっているときに
以下のような書き方をして無限ループを発生させてしまいました。

foreach($versiondate as $version){

$date = $versiondate->date

}

上記のような書き方をした場合に、$versionの中の値が全然変わらずに
foreachによるループが一向に終了しないという現象でした。

記述が正しくなく、本来は
$version->date
と書くべきで、正しい記載に変更したらループも正常に回るようになったのですが
原因がわかりません。

なにが原因で上記のような現象が発生するのか、分かる方はいらっしゃらないでしょうか?