I am using somone's code as example because i dont really understand it.
This is a small part of the code which i am using as example.
Here is the code:

class MySQLDB
{
   var $connection;		 //The MySQL database connection
   var $num_active_users;   //Number of active users viewing site
   var $num_active_guests;  //Number of active guests viewing site
   var $num_members;		//Number of signed-up users
   /* Note: call getNumMembers() to access $num_members! */

   /* Class constructor */
   function MySQLDB(){
	  /* Make connection to database */
	  $this->connection = mysql_connect(DB_SERVER, DB_USER, DB_PASS) or die(mysql_error());
	  mysql_select_db(DB_NAME, $this->connection) or die(mysql_error());
	  
	  /**
	   * Only query database to find out number of members
	   * when getNumMembers() is called for the first time,
	   * until then, default value set.
	   */
	  $this->num_members = -1;
	  
	  if(TRACK_VISITORS){
		 /* Calculate number of users at site */
		 $this->calcNumActiveUsers();
	  
		 /* Calculate number of guests at site */
		 $this->calcNumActiveGuests();
	  }
   }

Can anyone explain me what does $this->connection mean another words what does $this really do and how it works.

Recommended Answers

All 3 Replies

$this->connection is a variable representing the mySQL connection.
you're assigning that connection to $this->connection, although, I would rename it

So its basically just renaming the connection to $this->connection.

Can anyone explain me what does $this->connection mean another words what does $this really do and how it works.

In PHP, as with most object oriented languages, $this is a reference variable that allows access to members variables of the class $this is used in. For example:

class NumberClass {
    var $number;

    function printNumber() {
        printf($this->number);
    }
}

Will print the value of that class's $number variable, whatever that may be for the particular object. Somewhere else in code you could do this:

$numberObject = new NumberClass();
$numberObject->number = 5;
$numberObject->printNumber();

And the output would be 5. Hope that helps explain the $this variable a bit.

-Fredric

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.