PHP對(duì)象編程問題,Call to a member function hello() on a non-object
Jun 23, 2016 pm 02:21 PM
<?php $instest = new test(); $insobject = new object(); $insobject->objectValue = "final"; $instest->test(); class test{ var $testValue = "testValueins"; function test(){ print_r($insobject); $insobject->hello(); } } class object{ var $objectValue = "original"; function hello(){ echo $objectValue; } }?>
報(bào)錯(cuò)如下
Notice: Undefined variable: insobject in C:\wamp\www\zhebo\test.php on line 11
Call Stack
Notice: Undefined variable: insobject in C:\wamp\www\zhebo\test.php on line 12
Fatal error: Call to a member function hello() on a non-object in C:\wamp\www\zhebo\test.php on line 12
這有什么問題么,怎樣才可以達(dá)到在實(shí)例里引用別的實(shí)例里的方法,或者有什么更好地解決方法?
我很急,希望大家可以幫忙。非常感謝啊。非常緊急。第一次用對(duì)象的思想編程還不太懂啊。
回復(fù)討論(解決方案)
$instest = new test(); $insobject = new object(); //$insobject->objectValue = "final"; object::$objectValue= "final"; $instest->test(); class test{ var $testValue = "testValueins"; function test(){ object::hello(); } } class object{ public static $objectValue = "original"; Public static function hello(){ echo self::$objectValue.'<br>'; } }
?完?才??你??伙不??,後悔了,
?完?才??你??伙不??,後悔了,
沒有啊,那個(gè)帖子還沒有能解決方法出來,我當(dāng)然還要等等再結(jié)貼啊 : )
?完?才??你??伙不??,後悔了,
看來只能使用靜態(tài)化了?
未經(jīng)傳遞或全局聲明,內(nèi)部不能訪問外部的變量(對(duì)象也是用變量做載體的)
這是 php 語法的基本規(guī)則,不可逾越
$insobject = new object();$insobject->objectValue = "final";$instest = new test($insobject);//$instest->test(); 這是構(gòu)造函數(shù),一般不這樣調(diào)用 class test{ var $testValue = "testValueins"; function test($insobject){ print_r($insobject); $insobject->hello(); }} class object{ var $objectValue = "original"; function hello(){ echo $this->objectValue; //訪問屬性要這樣 }}object Object ( [objectValue] => final ) final
未經(jīng)傳遞或全局聲明,內(nèi)部不能訪問外部的變量(對(duì)象也是用變量做載體的)
這是 php 語法的基本規(guī)則,不可逾越
$insobject = new object();$insobject->objectValue = "final";$instest = new test($insobject);//$instest->test(); 這是構(gòu)造函數(shù),一般不這樣調(diào)用 class test{ var $testValue = "testValueins"; function test($insobject){ print_r($insobject); $insobject->hello(); }} class object{ var $objectValue = "original"; function hello(){ echo $this->objectValue; //訪問屬性要這樣 }}object Object ( [objectValue] => final ) final
那我現(xiàn)在應(yīng)該怎么在外部調(diào)用 test里的test函數(shù)呢,如果一般不這樣使用的話
未經(jīng)傳遞或全局聲明,內(nèi)部不能訪問外部的變量(對(duì)象也是用變量做載體的)
這是 php 語法的基本規(guī)則,不可逾越
$insobject = new object();$insobject->objectValue = "final";$instest = new test($insobject);//$instest->test(); 這是構(gòu)造函數(shù),一般不這樣調(diào)用 class test{ var $testValue = "testValueins"; function test($insobject){ print_r($insobject); $insobject->hello(); }} class object{ var $objectValue = "original"; function hello(){ echo $this->objectValue; //訪問屬性要這樣 }}object Object ( [objectValue] => final ) final
那我現(xiàn)在應(yīng)該怎么在外部調(diào)用 test里的test函數(shù)呢,如果一般不這樣使用的話
另外構(gòu)造函數(shù)不是 __construct()么?
調(diào)用構(gòu)造函數(shù)和 new 是一樣的
都是返回一個(gè)類的實(shí)例
未經(jīng)傳遞或全局聲明,內(nèi)部不能訪問外部的變量(對(duì)象也是用變量做載體的)
這是 php 語法的基本規(guī)則,不可逾越
$insobject = new object();$insobject->objectValue = "final";$instest = new test($insobject);//$instest->test(); 這是構(gòu)造函數(shù),一般不這樣調(diào)用 class test{ var $testValue = "testValueins"; function test($insobject){ print_r($insobject); $insobject->hello(); }} class object{ var $objectValue = "original"; function hello(){ echo $this->objectValue; //訪問屬性要這樣 }}object Object ( [objectValue] => final ) final
那我現(xiàn)在應(yīng)該怎么在外部調(diào)用 test里的test函數(shù)呢,如果一般不這樣使用的話
另外構(gòu)造函數(shù)不是 __construct()么?
我想起來了,php4里同名函數(shù)默認(rèn)是構(gòu)造函數(shù)
?完?才??你??伙不??,後悔了,
看來只能使用靜態(tài)化了? ??化速度更快,不?看你的?法似乎是?可奈何,?啥呢?
php5 也是一樣的,C++ 也是
未經(jīng)傳遞或全局聲明,內(nèi)部不能訪問外部的變量(對(duì)象也是用變量做載體的)
這是 php 語法的基本規(guī)則,不可逾越
$insobject = new object();$insobject->objectValue = "final";$instest = new test($insobject);//$instest->test(); 這是構(gòu)造函數(shù),一般不這樣調(diào)用 class test{ var $testValue = "testValueins"; function test($insobject){ print_r($insobject); $insobject->hello(); }} class object{ var $objectValue = "original"; function hello(){ echo $this->objectValue; //訪問屬性要這樣 }}object?Object?(?[objectValue]?=>?final?)?final
那我現(xiàn)在應(yīng)該怎么在外部調(diào)用?test里的test函數(shù)呢,如果一般不這樣使用的話
另外構(gòu)造函數(shù)不是?__construct()么?
我想起來了,php4里同名函數(shù)默認(rèn)是構(gòu)造函數(shù)

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

PHP ?? ??? ?? ???? ?? ? ????? ??? ?????. 1. ?? ??? ??? ??? ??? ? ? ??? ??? ??? ?? ?? ??? ???? ???????. 2. ?? ??? ???? ???? ? ?? ????? ?? ?? ?? ??? ?????. 3. $ _get ? $ _post? ?? Hyperglobal ??? ?? ???? ?? ??? ? ??? ??? ??????? ???????. 4. ?? ?? ?? ???? ?? ?? ?? ??? ?????? ?? ??? ??? ?? ??? ???????. ??? ??? ????? ??? ??? ?? ???? ????? ? ??? ? ? ????.

PHP ?? ???? ???? ????? ?? ? ??? ???? ?? ?? ? ??? ???? ?? ??? ?????? ??? ??? ? ? ???????. 1. ??? ?? CSRF? ???? ?? ??? ??? ???? ?????? ??? ???? FINFO_FILE? ?? ?? MIME ??? ?????. 2. ??? ??? ??? ???? ??? ?? ??? ?? ? WEB ????? ??? ???? ??????. 3. PHP ?? ??? ?? ? ?? ???? NGINX/APACHE? ??? ????? ?? ???? ?????. 4. GD ?????? ??? ? ?? ???? ??? ?? ??? ?? ????.

PHP ?? ???? ? ?? ???? ??? ????. 1. // ?? #? ???? ? ?? ??? ???? // ???? ?? ????. 2. ?? /.../ ?? ?? ?? ??? ????? ?? ? ?? ??? ?? ? ? ????. 3. ?? ?? ?? / if () {} /? ?? ?? ??? ????? ??? ?? ?? ?? ??? ???? ????? ???? ??? ?? ???? ???? ??? ? ??? ??????.

Ageneratorinphpisamemory- ???? Way-Erate-Overgedatasetsetsbaluesoneatimeatimeatimeatimallatonce.1.generatorsuseTheyieldKeywordTocroadtOpvaluesondemand, RetingMemoryUsage.2

PHP ??? ???? ??? ??? ??? ????? ????. ??? ????? ?? ???? ??? "?? ? ?"??? "?"? ???????. 1. ??? ? ??? ??? DocBlock (/*/)? ?? ?? ??? ???? ??? ? ?? ???? ??????. 2. JS ??? ???? ?? ???? ??? ?? ??? ??? ?????. 3. ??? ?? ?? ?? ??? ???? ????? ????? ???? ?? ????? ???? ? ??????. 4. Todo ? Fixme? ????? ???? ? ? ??? ??? ???? ?? ?? ? ??? ???????. ??? ???? ?? ??? ??? ?? ?? ?? ???? ???? ? ????.

tolearnpheffectical, startBysetTupaloCalserErverEnmentUsingToolslikexamppandacodeeditor -likevscode.1) installxamppforapache, mysql, andphp.2) useacodeeditorforsyntaxsupport.3)) 3) testimplephpfile.next, withpluclucincludechlucincluclucludechluclucled

PHP??? ???? ??? ?? ?? ????? ???? ??? ?? ??? ??? ?? ? ??? ??? ???? ?????. ???? 0?? ???? ?? ??? ???? ? ?? ???? ?? ?? ? ? ????. MB_SUBSTR? ?? ??? ??? ???????. ? : $ str = "hello"; echo $ str [0]; ?? H; ??? MB_SUBSTR ($ str, 1,1)? ?? ??? ??? ??? ??????. ?? ???????? ???? ??? ???? ?? ???? ?? ?? ???? ?????? ??? ????? ?? ??? ?? ??? ???? ???? ?? ????.

toinstallphpquickly, usexampponwindowsorhomebrewonmacos.1. ??, downloadandinstallxAmpp, selectComponents, startApache ? placefilesinhtdocs.2
