導航:首頁 > 編程語言 > php調用對象函數參數

php調用對象函數參數

發布時間:2022-11-17 03:28:19

1. php函數調用參數的問題,主要是參數數量不確定。

參數不確定的情況下敢不敢把所有的參數和值按照key=>value的性質組織成數組,然後json_encode一下,函數調用的時候傳遞一個參數,參數的值就是這個json,然後過去再把json_decode成數組?你覺得呢?

2. php中類的構造函數參數問題

其實很多OOP語言都差不多,對於對象的傳遞是引用,如果你不想對象被引用,那你需要把對象clone一個新對象。 字串與數值的是值傳遞。

3. PHP調用類的函數&session傳遞對象問題

使用SESSION存儲的對象時,需要載入該對象所屬類的定義。在你的例子中,SESSION中的對象為a的實例,你必須包含定義類a的文件,否則對象會失效。即會得到不完整類PHP_Incomplete_Class。這個類類似於stdClass,失去了原有對象定義的方法。

望採納,謝謝支持!

4. php對象:對象傳入函數問題

函數在調用的時候,參數會被重新開辟內存空間的。
也就是說:

你傳值穿的是$p1,但在函數test運行的時候會另開辟一個空間,復制一遍$p1,之後再函數中操作的內存都是這個函數新開辟的空間。在這個函數test消亡的時候,這個空間被釋放。

所以說你這個根本就沒有修改了$p1的值,只是復制了一遍,然後改了,然後刪了。

如樓上說的,如果你在參數前面加上"&"符號,這個叫引用。則在參數運行的時候不會另外的開辟內存空間,而是用你的參數的內存空間。

對於函數你可以看看c或者c++語言的函數部分,他們是一樣的。給你個例子:
<?php
function swap(&$a,$b){//$a$b叫形參,只是在表示第一個參數第二個參數
$a=20;
$b=10;
}
$x=10;
$y=20;
swap($x,$y);//swap中第一個參數是帶引用的,被改變了值,第二個參數沒有引用,並不會改變參數的值
echo "x=".$x." y=".$y;//結果 x=20 y=20
?>

5. php 函數參數問題

直接return $rows就行了

6. php調用函數時,使用某個參數的前面的參數默認值時,應該怎麼處理

PHP不支持這種調用方式,你的需求是不能實現的。
如果你不能改動函數,那麼你可以做一個封裝。PHP的語法比較靈活,有幾種替代方式你可以借鑒。這些例子都有廣泛的應用。
示例一:如果參數值為null,則在函數里強制賦值為默認值

1
2
3
4
5
6
7
8

<?php
function foo2($a=1,$b=2,$c=3) {
if ($a === null) $a=1;
if ($b === null) $b=2;
if ($c === null) $c=3;
foo($a, $b, $c);
}
foo(1, null, 3);

示例二:使用數組參數

<?php
function foo3($array=array()) {
extract($array);
if (!isset($a)) $a=1;
if (!isset($b)) $b=2;
if (!isset($c)) $c=3;
foo($a, $b, $c);
}
foo(array('a'=>1, 'c'=>3));

python是支持你所說的那種調用方式的:

def foo(a=1, b=2, c=3):
pass
foo(a=1, c=3)

7. php對象調用類的函數

調用方法getdir返回字元串,但沒有輸出到頁面顯示,也沒有賦值操作,不知道有什麼用

方法img2data定義中的$imgfrom($imgsrc);這一句完全沒看懂,在我的水平上理解這種寫法是錯的。

方法_imgfrom定義中getimagesize這個函數不知道來自哪兒。

總結:太混亂了。

類中訪問內部屬性和方法,要用$this->屬性名/方法名

8. PHP函數方法里的參數可以是本函數對象嗎,QueryResponse Query(Query $parameters)這個函數我一直沒明白

QueryResponse Query (Query $parameters)
‖ ‖ ‖ ‖
返回值類型 方法名 參數類型 參數

9. php如何調用函數

PHP函數調用與Java/C/C++是一樣的額,通過函數名(參數列表)就可以了,

舉個栗子:

圖中,有兩處函數調用,一開始的session_start()是調用的PHP函數,validate_user($username, $password)是用戶自定義函數,同樣的方式調用。

10. php中在外部怎樣調用函數裡面的參數

你這是一個類方法么,如果是你可以用

$result=array();
functiongetResult($ret,$i=0){
foreach($retas$k=>$v){
global$resultaaa;
$tmp=array();
$tmp["col_id"]=$v["col_id"];
$tmp["col_pid"]=$v["col_pid"];
$tmp["col_path"]=$v["col_path"];
$tmp["col_title"]=$v["col_title"];
$this->result[$i++]=$tmp;
if($v['k']!=NULL){
$i=$this->getResult($v['k'],$i);
}
}
return$i;
}

$this->result;

如果不是類方法,你的$i = $this->getResult($v['k'],$i); 這一句是錯誤的,

你可以參考風雲style的答案,或者增加一個傳址參數

functiongetResult($ret,$i=0,&$result = array()){}

外面直接用$result 就是方法裡面修改後的變數

閱讀全文

與php調用對象函數參數相關的資料

熱點內容
win10ksm伺服器地址 瀏覽:339
一元二次估演算法 瀏覽:925
一招讀懂源碼 瀏覽:126
為什麼蘋果ipad連接不上伺服器 瀏覽:927
可樂app怎麼用卡密 瀏覽:766
路由器如何打開dhcp伺服器地址 瀏覽:75
谷歌圖片怎麼搜索app 瀏覽:863
江蘇文件夾模具廠 瀏覽:464
安卓系統網線攔截怎麼關閉 瀏覽:31
伺服器和終端是什麼 瀏覽:516
換安卓蘋果照片怎麼弄回去 瀏覽:260
如何向ca中心申請伺服器 瀏覽:187
從java到Android 瀏覽:551
福建加密app哪個好用 瀏覽:382
opengl游戲編程徐明亮pdf 瀏覽:619
單片機row怎麼用 瀏覽:981
虛函數表與反編譯 瀏覽:134
網上的滴滴搶單app是怎麼做的 瀏覽:384
eve手游ios賬號怎麼登錄安卓的 瀏覽:622
linuxoracle12安裝教程 瀏覽:697