【发布时间】:2014-12-18 04:07:24
【问题描述】:
这给了我意想不到的 $end 但我找不到问题出在哪里,在 EOD 之前或之后没有空格或缩进。我正在使用 eval() 进行替换。
<?php echo <<<EOD
<?php
if((\${$type}s = \$this->{$type}())):
foreach(\${$type}s as \$item):
?>
<tr>
<td><?php echo \$item->Name; ?></td>
<td><?php echo Table::countRows(\$item->Name); ?></td>
<td><?php echo \$item->Engine; ?></td>
<td><a href="<?php echo get_url('cp/system/database/tables/view/'.\$item->Name); ?>">Show</a></td>
<td><a href="<?php echo get_url('cp/system/database/tables/rename/'.\$item->Name); ?>">Rename</a></td>
<td><a href="<?php echo get_url('cp/system/database/tables/delete/'.\$item->Name.'/confirm'); ?>" class="item-remove-button">Delete</a></td>
</tr>
<?php
endforeach;
endif;
?>
EOD; ?>
【问题讨论】:
-
您确实意识到
<?php echo $item->Name; ?>将被运行 而不是字面上的呼应,对吧?您实际上是在呼应foreach(${$type}s as $item),但随后正在运行<?php echo $item->Name; ?>。你想用这段代码做什么? -
@RocketHazmat 是的,我知道,这就是我修复上述代码的原因。这将用作创建节点的模板。现在它按预期工作。不知道 EOD;需要独处。