Hi, Sachin If you want your code to fail, you could set the default to NULL and check for NULL. <?php class A { public $country; function __construct($data=NULL) { if($data === NULL) { trigger_error("Couldn't construct address with a ".get_class()); } } } $obj=new A(); ?> Bye, Simon On Thu, Jul 31, 2014 at 10:03 AM, Sachin Raut <imsachinraut@xxxxxxxxx> wrote: > Hi > > I have a question in this following code. > <?php > > class A > > { > > public $country; > > function __construct($data=array()) > > { > > if(!isset($data)) > > { > > trigger_error("Couldn't construct address with a ".get_class()); > > } > > } > > } > > $obj=new A(); > > ?> > > I am not sending any "array" as an argument while creating an object. And > hence "if statement" in constructor should have been executed, but it > displays blank page. My query is why it's not executing "if statement"? > > Thanks > Sachin >