2009-09-10 70 views

回答

3

我想說這取決於數據的大小而不是維數,因爲數據在存儲之前被序列化。當然,深度多維數組也可能會導致性能的下降,但這是一個常見的指標,有更好的方法來做到這一點。

-2

沒有,我能想到的。

如果您擔心將其首先序列化爲字符串。

+0

該數組將無論如何都會被序列化 – soulmerge 2009-09-10 14:36:43

+0

沒有意義 - 數據在被存儲之前會被PHP自動序列化。 – 2009-09-10 14:38:36

1

除非您要存儲數兆字節的數據,否則您應該使用$ _SESSION數組來處理性能差異,因爲它只是被序列化爲一個字符串。就我個人而言,我很喜歡創建一個Session類並將其實例保存在$ _SESSION ['session']中。事情是這樣的:

<?php 
class Session 
{ 
    private $something; 

    public function Session() 
    { 
     // Constructory things 
    } 

    // Methods to your heart's content 
} 

if (session_id() == '') 
{ 
    session_start(); 
} 

if (empty($_SESSION['session'])) 
{ 
    $_SESSION['session'] = new Session(); 
} 
$session =& $_SESSION['session']; 
?> 

保存在一個名爲session.php文件,然後只需要「session.php文件」在您需要訪問會話的每個PHP文件的頂部,並通過訪問會話文件在底部定義的$ session變量。

+0

感謝您的提示。 看起來可能有用 – chris 2009-09-11 01:17:01