RE: [PHP-WIN] Flow of PHP testClass

From: Date: Thu, 29 Mar 2012 23:08:30 +0000
Subject: RE: [PHP-WIN] Flow of PHP testClass
References: 1  Groups: php.db php.windows 
Request: Send a blank email to php-db+get-48235@lists.php.net to get a copy of this message
Yes, I believe your understanding is correct... This is my understanding as well. In line 1 below, you are creating a new object and using the class constructor to initialize $a and $b. In line 2 below, you are creating a new object, with $a and $b's default values. In line 3 below, $a and $b are printed with the values passed through the class constructor in line 1. In line 4 below, $a and $b are printed with default values since nothing was passed through the class constructor. 1 . $inst1 = new TestClass(3,50); 2 . $inst2 = new TestClass(); 3. $inst1-­‐>printAB(); 4. $inst2-­‐>printAB(); -----Original Message----- From: Rikin Parekh [mailto:rikin08@gmail.com] Sent: Thursday, March 29, 2012 10:57 AM To: PHP DB; php-windows@lists.php.net; phpexperts-subscribe@yahoogroups.com Subject: [PHP-WIN] Flow of PHP testClass Hi Guys, Given below is a PHP script. Can someone help me with the output of the code. According to my understanding the output should be 3, 50, 20, 10. Can someone elaborate on the same and provide me an explanation on the flow? Thanks a lot in advance. <?php class TestClass { var $a =20; var $b =10; function TestClass($a= null, $b=null) { if (!is_null($a)) { $this-­‐>a= $a; } if(!is_null($b)) { $this-­‐>b=$b; } } function printAB() { echo $this-­‐>a.” “.$this-­‐>b.”\n”; } } $inst1 = new TestClass(3,50); $inst2 = new TestClass(); $inst1-­‐>printAB(); $inst2-­‐>printAB(); ?>

« previous php.db (#48235) next »