2010-09-18 219 views
0

我正在嘗試將我的PHP登錄系統與PHPBB登錄系統集成。 我的問題是,我包含PHP登錄文檔,其中包含一個名爲$user的類,但我的登錄系統也使用了$user。 例如我的登錄函數在名爲$ user的類中執行,並且phpbb登錄類是$ user-> login具有相同名稱的PHP變量

是否可以加載phpbb文檔,並在單獨的「環境」中登錄到我的主要網站?

如果您需要更多信息,請讓我知道

+0

後的 「環境」 你的意思範圍。你應該使用Facebook和你的登錄系統的類,然後你將有$ facebook-> user,$ login-> user。 – fredley 2010-09-18 17:03:36

+1

你已經找到了一個很好的理由來避免全局變量:) – 2010-09-18 17:04:15

+0

你可以告訴我們的代碼,導致這個問題,請。 – RobertPitt 2010-09-18 17:32:01

回答

3

您可以在函數中運行您的代碼。函數不傳遞全局變量,如果你沒有明確告訴他們;)

+0

一個類不能以'$'開頭!您正在處理某個類的*實例*,並且可以在另一個作用域 - 函數作用域中創建並使用此實例。 – NikiC 2010-09-18 17:28:14

0

你不能改變變量嗎?

<?php 
    include 'the/phpbb/core.pohp'; 

    $phpbb_user = $user; 

    include 'my/login.pohp'; 

    if($user->valid_uid($phpbb_user->uid)) 
    { 
    } 
?> 

編輯:

你可以添加第二個變量

打開的common.php,找到以下內容:

$user = new user(); 

添加

$backup_user = $user; 
+0

檢查我的更新! – RobertPitt 2010-09-18 17:17:30

+0

您可以創建靜態類來設置/獲取對象,靜態類將具有全局訪問權限,但其中存儲的對象將被綁定到類範圍。 – RobertPitt 2010-09-18 17:26:15