2012-01-24 55 views
2

這是我的代碼:如何定義一個php類的全局實例?

<?php 
require_once 'classes/dbconnect.php'; 
$connector = new dbconnect(); 
pp(); 
function pp(){ 
$uid="0000007"; 
$table = $connector->query("SELECT * FROM tc_personal WHERE uid = '$uid'"); 
$tb = mysql_fetch_object($table); 
print $tb->name; 
} 
?> 

但是這個代碼將無法工作,因爲PP()函數不能訪問$連接器。 我如何定義一個全局變量作爲$連接器?

回答

4
<?php 
require_once 'classes/dbconnect.php'; 
global $connector; 
$connector = new dbconnect(); 
pp(); 
function pp(){ 
global $connector; 
$uid="0000007"; 
$table = $connector->query("SELECT * FROM tc_personal WHERE uid = '$uid'"); 
$tb = mysql_fetch_object($table); 
print $tb->name; 
} 
?> 
+0

謝謝它的工作原理 –

7

肯定比使用全局變量更好,即使沒有OOP

<?php 
require_once 'classes/dbconnect.php'; 
$connector = new dbconnect(); 
pp($connector); 

function pp($connector){ 
    $uid="0000007"; 
    $table = $connector->query("SELECT * FROM tc_personal WHERE uid = '$uid'"); 
    $tb = mysql_fetch_object($table); 
    print $tb->name; 
} 
?> 
+0

謝謝,全球更容易。 –

+4

全球也是不好的編碼習慣...更容易!==更好 –

+0

與@MarkBaker絕對同意,你應該儘可能地避免全局變量。這應該被接受。 –