The code is blelow; -----------------b.php---------------- <?php function __autoload($class_name) { include_once $class_name . '.php'; } $objref=new My("Good"); $objref->buff(); ?> ----------------------------------- ----------My.php-------------- <?php $obj=new My("Hello"); $obj->buff(); Class My{ private $word; function __construct($getword){ $this->word=$getword; } public function buff(){ echo $this->word."<br />"; } } ?> -------------------------------------- on website, first it execute My.php , then execute b.php So it will show blelow; Hello(when excute My.php) Hello(when excute from b.php) Good(when excute from b.php) I do not need "Hello" twice I would get Hello(when excute My.php) Good(when excute from b.php) Please do help me! Regards, Yui 2008/6/3 Thijs Lensselink <dev@xxxxxxxx>: > Quoting Yui Hiroaki <hiroakiyui@xxxxxxxxx>: > >> Please look at my.php >> >> my.php load >> $obj=new My("Hello"); >> $obj->buff(); >> >> so, if a.php load, it absolutely got "hello" in load b.php >> >> Regards, >> Yui >> >> 2008/6/3 Thijs Lensselink <dev@xxxxxxxx>: >>> >>> Quoting Yui Hiroaki <hiroakiyui@xxxxxxxxx>: >>> >>>> Thank you for a good suggest! >>>> >>>> Somehow, I have to execute my.php also. >>>> This program have to run. >>>> 1)My.php >>>> 2)b.php >>>> >>>> My.php show "Hello" -> it is OK, >>>> b.php shows >>>> "Hello" >>>> "Good" >>>> >>>> it is NOT good. I need to get only "Good" >>>> >>>> >>>> Please give me a suggestion. >>>> >>>> Regards, >>>> Yui >>>> 2008/6/3 James Dempster <letssurf@xxxxxxxxx>: >>>>> >>>>> I suggest you don't put code other than class structures in class >>>>> files. >>>>> Also don't execute My.php just execute b.php which though __autoload >>>>> includes My.php. >>>>> >>>>> -----------------b.php---------------- >>>>> <?php >>>>> function __autoload($class_name) { >>>>> include_once $class_name . '.php'; >>>>> } >>>>> >>>>> $obj=new My("Hello"); >>>>> $obj->buff(); >>>>> >>>>> $objref=new My("Good"); >>>>> $objref->buff(); >>>>> >>>>> ----------------------------------- >>>>> >>>>> ----------My.php-------------- >>>>> <?php >>>>> >>>>> Class My{ >>>>> private $word; >>>>> function __construct($getword){ >>>>> $this->word=$getword; >>>>> } >>>>> public function buff(){ >>>>> echo $this->word."<br />"; >>>>> } >>>>> } >>>>> >>>>> >>>>> /James Dempster >>>>> >>>>> On Tue, Jun 3, 2008 at 9:17 AM, Yui Hiroaki <hiroakiyui@xxxxxxxxx> >>>>> wrote: >>>>>> >>>>>> HI! >>>>>> >>>>>> I had mistake in code in php. >>>>>> >>>>>> When I excute My.php, it say "Hello" >>>>>> When I excute b.php, it say >>>>>> Hello >>>>>> Good >>>>>> >>>>>> I would like to execute b.php and show >>>>>> only "Good" >>>>>> >>>>>> If you know it ,please teach me! >>>>>> >>>>>> Here is code below; >>>>>> >>>>>> -----------------b.php---------------- >>>>>> <?php >>>>>> function __autoload($class_name) { >>>>>> include_once $class_name . '.php'; >>>>>> } >>>>>> >>>>>> >>>>>> $objref=new My("Good"); >>>>>> $objref->buff(); >>>>>> ?> >>>>>> ----------------------------------- >>>>>> >>>>>> ----------My.php-------------- >>>>>> <?php >>>>>> $obj=new My("Hello"); >>>>>> $obj->buff(); >>>>>> >>>>>> >>>>>> Class My{ >>>>>> private $word; >>>>>> function __construct($getword){ >>>>>> $this->word=$getword; >>>>>> } >>>>>> public function buff(){ >>>>>> echo $this->word."<br />"; >>>>>> } >>>>>> } >>>>>> ?> >>>>>> -------------------------------------- >>>>>> Regards, >>>>>> Yui >>>>>> >>>>>> >>>>>> 2008/6/3 James Dempster <letssurf@xxxxxxxxx>: >>>>>> > I don't see how it's possible for you to get "Hello" after "Good", >>>>>> > when >>>>>> > the >>>>>> > file that cause's "Hello" is required to do "Good" >>>>>> > >>>>>> > /James >>>>>> > >>>>>> > On Mon, Jun 2, 2008 at 2:00 PM, Yui Hiroaki <hiroakiyui@xxxxxxxxx> >>>>>> > wrote: >>>>>> >> >>>>>> >> Please take a look at code. >>>>>> >> >>>>>> >> --------a.php-------- >>>>>> >> >>>>>> >> $obj=new my("Hello"); >>>>>> >> $obj->buff(); >>>>>> >> >>>>>> >> >>>>>> >> Class my{ >>>>>> >> >>>>>> >> private $word; >>>>>> >> function __construct($getword){ >>>>>> >> $this->word=$getword; >>>>>> >> } >>>>>> >> public function buff(){ >>>>>> >> echo $this->word."<br />"; >>>>>> >> } >>>>>> >> -------------------------------------- >>>>>> >> >>>>>> >> >>>>>> >> -----b.php----------------------- >>>>>> >> >>>>>> >> function __autoload($class_name) { >>>>>> >> include_once $class_name . '.php'; >>>>>> >> } >>>>>> >> >>>>>> >> >>>>>> >> $objref=new my("Good"); >>>>>> >> $objref->buff(); >>>>>> >> -------------------------------------------- >>>>>> >> >>>>>> >> >>>>>> >> >>>>>> >> I get an Echo; >>>>>> >> >>>>>> >> Good >>>>>> >> Hello >>>>>> >> Hello >>>>>> >> >>>>>> >> I do not need to get Hello twice. >>>>>> >> >>>>>> >> When I b.php , $obj=new my("Hello") is loaded. >>>>>> >> >>>>>> >> >>>>>> >> Do you have any adia to avoid load $obj in a.php twice? >>>>>> >> >>>>>> >> Regards, >>>>>> >> Yui >>>>>> >> >>>>>> >> -- >>>>>> >> PHP General Mailing List (http://www.php.net/) >>>>>> >> To unsubscribe, visit: http://www.php.net/unsub.php >>>>>> >> >>>>>> > >>>>>> > >>>>> >>>>> >>>> >>>> -- >>>> PHP General Mailing List (http://www.php.net/) >>>> To unsubscribe, visit: http://www.php.net/unsub.php >>>> >>>> >>> >>> >>> If you only want to see "Good" Then don't run it twice. >>> Take James's suggestion and try it again: >>> >>> -----------------b.php---------------- >>> <?php >>> function __autoload($class_name) { >>> include_once $class_name . '.php'; >>> } >>> >>> $objref=new My("Good"); >>> $objref->buff(); >>> >>> ----------------------------------- >>> >>> ----------My.php-------------- >>> <?php >>> >>> Class My{ >>> private $word; >>> function __construct($getword){ >>> $this->word=$getword; >>> } >>> public function buff(){ >>> echo $this->word."<br />"; >>> } >>> } >>> >>> > > I don't think i understand you fully. Or you're trying to make it to > complicated. > > You have a class in "My.php" : > > Class My{ > private $word; > > function __construct($getword){ > $this->word=$getword; > } > > public function buff(){ > echo $this->word."<br />"; > } > } > > And a script that creates an instance of My "b.php" : > > function __autoload($class_name) { > include_once $class_name . '.php'; > } > > $obj=new My("Hello"); > $obj->buff(); > > $objref=new My("Good"); > $objref->buff(); > > The output will be "Hello<br/>Good<br/>". because you call it two times. So > if you only want to see "Good". Then you change "b.php" to look like this: > > function __autoload($class_name) { > include_once $class_name . '.php'; > } > > $objref=new My("Good"); > $objref->buff(); > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php > > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php