php
  • class
  • instance
  • global
  • 2012-01-24 2 views 2 likes 
    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()関数は、$コネクタにアクセスできないため、このコードは動作しません。 グローバル変数を$ connectorとしてどのように定義できますか?

    答えて

    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

    グローバルを使用するよりもきっと良く、

    <?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

    おかげで作品をありがとうOOPない場合でも、世界は簡単です。 –

    +4

    グローバルは悪いコーディング慣行です...簡単!== better –

    +0

    @ MarkBakerと絶対合意しました。可能な限りグローバル化を避けるべきです。これは受け入れられるべきです。 –

    関連する問題