Php Symfony1.4其他应用程序的访问会话

Php Symfony1.4其他应用程序的访问会话,php,session,symfony-1.4,Php,Session,Symfony 1.4,我最近在现有网站上创建了一个新的symfony应用程序。然后,在这个新的应用程序中,我想读取旧应用程序的会话,比如登录用户id。不幸的是,在每个应用程序中,会话是完全分开的,我指的是symfony会话,比如$this->getUser->getAttributeuserSession 我猜symfony会话是使用$\会话实现的,如: $_SESSION = array("symfonyapp1" => array(....), "symfonyapp2" => array(....)

我最近在现有网站上创建了一个新的symfony应用程序。然后,在这个新的应用程序中,我想读取旧应用程序的会话,比如登录用户id。不幸的是,在每个应用程序中,会话是完全分开的,我指的是symfony会话,比如$this->getUser->getAttributeuserSession

我猜symfony会话是使用$\会话实现的,如:

$_SESSION = array("symfonyapp1" => array(....), "symfonyapp2" => array(....));
因此,我在旧应用程序中编写了$_SESSION[test]=testStr,并编写了var_dump$_SESSION[test];。屏幕只是打印空值,所以我猜是错的

然后我想也许我可以读取某个应用程序的配置,然后获取该应用程序的用户。因此,我在新应用程序中编写了以下代码:

require_once($_SERVER['DOCUMENT_ROOT'].'/../config/ProjectConfiguration.class.php');

$configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', false);
$context = sfContext::createInstance($configuration);
var_dump($context->getUser()->getAttribute("userId"));
不幸的是,它再次打印空


我现在完全不知道。非常感谢您的建议

检查应用程序的会话标识符。Php的默认会话id是PHPSESSID,据我记忆所及,Symfony 1.4应用程序的默认会话标识符就是Symfony

您可以通过以下设置修改apps/YOUR_APP_NAME/config/factories.yml文件来更改Symfony的会话标识符:

all:
  storage:
    param:
      session_name: PHPSESSID

通过这样做,您的Symfony应用程序将与旧应用程序共享相同的会话id,并且您将能够在Symfony应用程序中读取$\u会话属性

您是否检查了调试栏配置/用户,它包含所有会话属性谢谢回答。我已经检查了Config/User。但在新应用程序页面和旧应用程序页面中,配置/用户数据完全不同,没有共享会话属性