显示zend框架中的所有列

时间:2014-12-06 08:25:55

标签: php html zend-framework fetch

这是我的Zend phtml文件:

<?php 
foreach ($this ->books as $key =>$value)
{
    echo $value->title.'by'.$value->author.'<br>';
} 

结果是:
第一本书第一本书 第二本书第二本书 第三本书第三本书 第四本书第四本书

&#34; 标题&#34;和&#34; 作者&#34;是我的表的两列,我的表有另外4列,我只想迭代所有列而不知道它们在表中的名称。

1 个答案:

答案 0 :(得分:0)

也许你可以使用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>";
}