0

在我的 cakephp 应用程序的渲染视图中出现一个反引号。它们有时出现在两个地方:

  1. 在身体的最开始
  2. echo $this->Form->create(); 之后

我看不到导致问题的模式。是否存在产生反引号的已知问题?

后面出现的反引号示例Form->create()

<div class="users form">
<h2><?php echo __('Change password'); ?></h2>
<?php
echo $this->Form->create();
echo $this->Form->input(
    'password_new',
    array(
        'label' => 'New Password',
        'type' => 'password',
        'div' => 'input password required',
        'required' => 'required',
    )
);
echo $this->Form->input(
    'password_new_confirm',
    array(
        'label' => 'New Password Again',
        'type' => 'password',
        'div' => 'input password required',
        'required' => 'required',
    )
);
echo $this->Form->end(__('Change password'));
?>
</div>
<div class="actions">
<?php echo $this->Html->link(__('Back To Settings'), array('action' => 'settings',)); ?>
</div>

HTML 输出截图: HTML 输出截图:

4

2 回答 2

2

在我的用户模型中发现了一个反引号,真是个白痴,谢谢 Summea

于 2013-06-12T21:32:36.487 回答
1

正如您在回答中指出的那样,听起来反引号最终位于另一个文件中(在这种情况下,您的用户模型文件。)

这是使用 CakePHP 的缺点之一:<?php ... ?>标签之外的文本将呈现给最终用户将看到的最终输出视图(除了应该只显示给最终用户。)

echo在特定控制器中使用语句时甚至会发生这种情况。

例如,使用:

echo 'random text that should not be displayed from a controller';

将导致在最终的输出视图中显示该“随机文本”。

基本上,CakePHP 似乎并没有强制执行超级干净的视图“输出”过程(这可能部分是因为 PHP 固有的工作方式......)所以主要取决于开发人员来跟踪所需的视图输出。

于 2013-06-12T22:32:48.293 回答