CakePHP-无法在视图中获取会话变量 - php

在ProjectsController.php中,我设置了一个会话变量,因为我希望该信息可以在所有控制器,模型和视图中访问:

$this->Session->write('Project.title', $this->Project->title);

现在,当我尝试从“项目”视图访问它时,如下所示:

        <p>Project: <strong>
        <?php if (isset($session->read('Project.title'))): 
            $session->read('Project.title');
        ?>
        <?php else: ?>
            Not selected
        <?php endif; ?>
        </strong></p>       

我收到以下错误:

Fatal error: Can't use method return value in write context 

指上面代码的第二行。

我浏览过CakePHP文档并进行了搜索,那么我在这里做错了什么?

谢谢!

编辑:

我也尝试使用:

$this->Session->read('Project.title')

导致出现相同的错误消息。

参考方案

您应该执行PHP偶尔告诉您的内容:)
错误消息很清楚。您不能以这种方式使用isset()和empty()。
它们仅直接使用变量,而不使用方法。所以用

<?php if ($this->Session->check('Project.title')) {
    echo $this->Session->read('Project.title');
} ?>

如食谱中所述

你也可以

<?php
$title = $this->Session->read('Project.title');
if ($title) {
    echo $title;
} ?>

甚至

<?php if ($title = $this->Session->read('Project.title')) {
    echo $title;
} ?>

最后一个不是cakephp编码约定。

CakePHP AJAX布局 - php

我正在使用CakePHP应用程序和jQuery Mobile。在CakePHP应用程序中,RequestHandler已打开,现在,jQuery Mobile将所有请求作为ajax请求发出,但不仅需要整页,而且需要完整的页面布局。我需要requesthandler,并且尝试设置布局,强制渲染,关闭自动布局,没有任何效果,cake只返回我视图的内容。我真的很想…

CakePHP:为插件创建动作挂钩 - php

我想包括与Wordpress中类似的动作挂钩。我已经阅读了有关编写插件的章节,但是我希望能够在不更改父应用程序代码的情况下对其进行维护。是否对此有任何支持?如果没有,有没有好的方法?我有一些想法,但我担心自己会重新发明轮子。 参考方案 就在这里。CakePHP Event System它的工作原理与WordPress的挂钩非常相似,但效果更好。您可以在不同的…

Cakephp 3.x如何获取session_id - php

在PHP中,要获取会话ID,我们必须像这样使用:session_id();如何在Cakephp 3.x中获取ID? 参考方案 您可以按以下方式访问会话ID,$this->request->session()->id()

CakePHP 2.0对象不是数组 - php

我目前是CakePHP的初学者,并且玩过CakePHP 1.3,但是最近发布了CakePHP 2.0。到目前为止,我喜欢它,但唯一的麻烦是它不返回Object,而是返回数组。我的意思是,必须执行$ post ['Post'] ['id']几乎没有道理。 (在我看来)仅执行$ post-> id更实用。现在,在Google之后,我偶然发现了this链接,…

Cakephp 3.x记住我的登录功能 - php

我正在用cakephp 3.x开发我的网站。在那我要记住我用于登录用户的功能。我已经在Google上进行了很多搜索(R&D),但找不到对我有用的东西。我试图申请CakePHP remember me with Auth但这并没有帮助我。我在数据库中将用户名作为电子邮件地址,将密码作为密码字段。如果有人有任何想法,请与我分享。我的登录功能: $user = $…