Cakephp 2.2博客教程未定义常量错误

Cakephp 2.2博客教程未定义常量错误,cakephp,Cakephp,在CakePHP2.2中复制粘贴了博客教程中的代码,但它不起作用。 获取以下错误。 注意(8):未定义常量Html的使用 注(8):未定义常量形式的使用 注(8):使用未定义的常量标杆 注意事项(8):未定义常量all的使用注意事项(8):未定义索引:all 下面是PostsController和index.ctp的代码 <?php class PostsController extends AppController { public $helpers = array(’Html’, ’

在CakePHP2.2中复制粘贴了博客教程中的代码,但它不起作用。 获取以下错误。 注意(8):未定义常量Html的使用 注(8):未定义常量形式的使用 注(8):使用未定义的常量标杆 注意事项(8):未定义常量all的使用注意事项(8):未定义索引:all 下面是PostsController和index.ctp的代码

<?php
class PostsController extends AppController {
public $helpers = array(’Html’, ’Form’);

public function index() {

  $this->set(’posts’, $this->Post->find(’all’));

}

public function view($id = null) {
      $this->Post->id = $id;
      $this->set(’post’, $this->Post->read());
  }
}
?>

index.ctp
 <h1>Blog posts</h1>
 <table>
 <tr>
 <th>Id</th>
 <th>Title</th>
 <th>Created</th>
 </tr>
 <?php foreach ($posts as $post): ?>
 <tr>
 <td><?php echo $post[’Post’][’id’]; ?></td>
 <td>
 <?php echo $post[’Post’][’title’]; ?>
 </td>
 <td><?php echo $post[’Post’][’created’]; ?></td>
 </tr>
 <?php endforeach; ?>
 <?php unset($post); ?>
 </table>

index.ctp
博客帖子
身份证件
标题
创建

不要使用“因为它们不是php语法(仅在mysql中使用)

改为使用“替换”(简单撇号):


此外,
是不必要的,您应该转义您的输出
echo h($post['post']['title'])
,并且您应该在php文件中省略结束标记
?>
(但不在视图文件中)

我也有一段时间对此有问题。要解决OS X Mavericks用户的这一潜在问题,请执行以下操作:

Mavericks附带了一个设置,可以使用智能引号,将所有简单撇号转换为开始和结束撇号。如果进入系统首选项->键盘->文本->取消选中使用智能引号和破折号,您将能够编写一个普通的简单撇号。这为我解决了问题


请注意,在Mavericks中,即使是textedit也会将您的撇号从一个简单的on编辑为一个开始和结束。

Thanx很多Mark对此非常着迷。我知道这会是一件小事,只是因为我自己还没弄明白而已。投了赞成票!这是一个很容易解决的问题,严重不足的文件。
$this->set('posts', $this->Post->find('all'));