©
本文档使用
php.cn手册 发布
Starting with PHP 5, you may use PHP's own foreach statement to iterate over the contents of a standard COM/OLE IEnumVariant. In layman's terms, this means that you can use foreach in places where you would have used For Each in VB/ASP code.
Example #1 For Each in ASP
<% Set domainObject = GetObject("WinNT://Domain") For Each obj in domainObject Response.Write obj.Name & "<br />" Next %>
Example #2 while() ... Next() in PHP 4
<?php
$domainObject = new COM ( "WinNT://Domain" );
while ( $obj = $domainObject -> Next ()) {
echo $obj -> Name . "<br />" ;
}
?>
Example #3 foreach in PHP 5
<?php
$domainObject = new COM ( "WinNT://Domain" );
foreach ( $domainObject as $obj ) {
echo $obj -> Name . "<br />" ;
}
?>
[#1] szir at sch dot bme dot hu [2011-07-05 14:54:46]
As described in the PHP 5 COM changes article: http://devzone.zend.com/node/view/id/762
You not just "may use foreach statement", but you have to, because $domainObject->Next() is not available in PHP 5 (syntax has been dropped, not backwards compatible)