以下是我的文件:
<?php
foreach ($this ->books as $key =>$value)
{
echo $value->title.'by'.$value->author.'<br>';
} 其结果是:
第一本名著第一本书
第二本名著第二本书
第三本名著第三本书
第四本题为第四册的书
"title“和"author”是我表中的两列,我的表中还有4列,我只想在表中迭代所有列,而不知道它们的名称。
发布于 2014-12-06 10:59:58
也许你可以使用Refection。
试着做这样的事情:
class A{
public $prop1 = null;
public $prop2 = null;
public $prop3 = null;
public $prop4 = null;
}
$a1 = new A();
$a1->prop1 = "prop11";
$a1->prop2 = "prop12";
$a1->prop3 = "prop13";
$a1->prop4 = "prop14";
$a2 = new A();
$a2->prop1 = "prop21";
$a2->prop2 = "prop22";
$a2->prop3 = "prop23";
$a2->prop4 = "prop24";
$tab = array($a1,$a2);
foreach($tab as $key => $value){
$reflector = new ReflectionClass(get_class($value));
$properties = $reflector->getProperties(ReflectionProperty::IS_PUBLIC);
$var_out = "";
foreach($properties as $property){
$var_out .= ", " . $property->getName() . " = ". $value->{$property->getName()};
}
echo trim($var_out, ", ") . "<br>";
}https://stackoverflow.com/questions/27329767
复制相似问题