Re: referencing an existing object

From: Date: Tue, 15 Jun 2004 16:21:23 +0000
Subject: Re: referencing an existing object
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-188325@lists.php.net to get a copy of this message
Bernie wrote:
Howdy,
    I am writing a program that has a handful of classes.  I would like to be able to get information from one object to the other.  I have a couple of my classes extending others, but are there other ways to do this?
For example: If I have a database class and a separate class that would like to execute an sql statement... class mydbclass {
    var $db;
    function mydbclass ($server,$username,$password,$database){
        $this->db=mysql_connect($server, $username, $password);
        mysql_select_db("$database",$db);
    }
    function dosql($sql){
        $result = mysql_query($SQL,$db);
    }
} class myotherclass {
    function myotherclass(){
        $sql="select * from mytable";
        #now, how can I use $mydbclass->dosql($sql) to
        #execute this statement?
        #I want to be able to build a bunch of html with
        #the resulting records and it wouldn't make
        #sence to build all that in my db class
    }
} Thanks!
I would suggest something like this: class myotherclass {
    var $db
    function myotherclass(&$db){
        $this->db =& $db;
        $sql="select * from mytable";
        $this->db->dosql($sql);
    }
} $db = new mydbclass(); $other = new myotherclass($db); I would also suggest capitalizing the class names and using another DB abstraction layer (such as PEAR DB or MDB) but that's your option. ;-) -- paperCrane <Justin Patrin>

« previous php.general (#188325) next »