0

我们的代码库中有很多代码是由第三方开发人员完成的。他们修改了核心中的许多地方,我们想弄清楚到底发生了什么。

他们有这样的代码:

$pidsess = Mage::getSingleton('core/session', array('name'=>'frontend'));
$pidsess->setNA_pid(array("PID" => $pid, "PartInfo" => $return_data['result']));

这样做是存储一个“全局可用变量”,可以在 Magento Session 活动的任何时候调用,如下所示:

$pidsess = Mage::getSingleton('core/session', array('name' => 'frontend'));
$piddata = $pidsess->getNA_pid();

我在哪里可以找到设置这个“变量”的代码?我搜索了“setNA_”并找到了几个调用,但没有一个是实际的函数调用。

这是 Magento 愚蠢的 EAV 架构的一部分,您可以在其中编写自己的函数来设置 EAV 值吗?如果是这样,这些值将存储在哪里?

4

1 回答 1

0

仅仅因为你没有时间理解和/或不喜欢它而称它为愚蠢肯定不会有帮助。但是,与许多 magento 基类一样,它可能只是在 magento 会话中设置了一个变量,该变量在会话存储中的某个位置结束。

我会Mage::log(print_r($_SESSION,1)先看看是否真的存在['NA_pid'].

它与EAV无关。

于 2012-11-20T22:30:44.390 回答