A. 各位大神們,php中關於一個類中想調用多個其它類的方法,大神們有什麼辦法嗎
你為什麼不將這些類的方法歸結為一個大類呢,然後逐步細分為小類呢?
B. PHP如何在一個類中引用另一個類中的變數.
可能你理解上有問題。不太明白你的意思,所以我分開解釋。如果是在定義的時候就引用,下面兩種。1.兩個都是類,即類的靜態變數(static修飾),一個類自然可以引用靜態變數,因為靜態變數是在程序進入main函數前就已經初始化完了。2.一個類A一個實例B(A類產生的對象),A當然無法在類的內部引用(即定義中),因為實例是在程序中動態分配的內存,類A必然先於實例B存在,所以A並不能知道B的存在。B可以引用類A的靜態變數,理由同1。如果是在運行時才引用。你只要在類A里寫一個函數,例如function(B b),這樣你要調用的時候通過這個函數做介面就行了,至於b你要做什麼,就是你的事了。
C. php同一個類如何調用如下函數:
就是在一個方法中調用另一個方法。
header('content-type:text/html;charset=utf-8');
classMyClass{
//如果你不想aa方法直接被外界訪問,應該把public改為private
privatefunctionaa(){
//
}
functionbb(){
$this->aa();//通過本實例調用
}
}
$var=newMyClass;
$var->bb();//調用bb,由bb調用aa
D. php 一個類調用另一個類的方法
一種是將你的變數寫成
global
$db
第二種是,將$db=new
db("localhost","root","123456","blog");
$db->connec();
放在你的類中。
E. 一個php文件中怎麼寫一個類調用另外一個Php文件的類
如果被調用的類方法是「獨立的」,可以用「static方法」直接調用。如果不是,那麼可以include被調用文件,再實例化類,再調用.
F. PHP中父類里調用子類的方法
無解,除非是靜態public方法,function前加static,可以testB::demo2()這樣調用
子類重寫之後的方法父類沒法調用,換句話說,父類咋知道自己會被哪個子類繼承呢,就算你強轉虛表也不一樣,無解的問題
而且父類咋需要調用子類的方法呢,就算你以後實踐中有這樣的需求,也只能說明你設計上不合理
G. php如何在一個類中調用其他函數嗎
把你要用到的函數都寫在一個文件裡面,
在入口文件裡面直接去include這個文件.
這樣不會佔用你太多資源的
,因為php解釋器在執行請求的過程中,會判斷請求用到的函數去調用.即使文件被包含,也是服務端的處理工作,不會被發送到請求的發送端.對效率的影響可以忽略不計.
H. PHP中,從一個類如何調用其他文件的方法
你對面向對象編程的概念還不是很清楚,一個類要想去調用一個不屬於本來的方法或者變數,要麼繼承父類,要麼連接一個介面。而繼承與連接的對象勢必是一個類。
你再common.php中定義的不是一個類,是不可能直接由 class util直接引用的,你可以試著把common.php的變數和方法封裝成一個類 然後由 class util繼承後來實現方法的調用操作。
I. php 類與類之間的相互調用
在a()中global $pub對xx()中沒有任何作用。
function xx(){
global $pub;
$pub->...
}
或者在a()中將賦給$this
function a(){
global $pub;
$this->pub = $pub;
}
J. PHP如何在類中調用另一個文件的類
你的這種定義方法是錯誤的,在類定義中不能直接包含文件或實例化對象,只能對類中屬性進行定義;
請參考天南(46926125)寫的DEMO:
###PHP DEMO CODE###
<?php
class b{
//include('a1.php'); //類中不能直接包含文件,應在類定義外部或者類中的方法中包含文件
//$c=new a(); //類定義中不能直接實例化另一個類,應該在類中的方法中實例化另一個類
function run(){
include('./a1.php');
return new a();
}
function d(){
$c=$this->run();
$c->ec();
}
}
$Obj=new b;
$Obj->d();
?>