php對象數組參數傳遞參數
『壹』 php中可以將一個對象當作參數傳到另一個頁面嗎
class test{
//略
}
$obj = new test();
$s_obj = serialize($obj);
session_start();
$_SESSION['s_obj'] = $s_obj;
將對象serialize再放入session或cookie...文件 什麼的.到另一個頁面用相應的方式取出來再unserialize就可以用了.
參考php手冊:
想要將已序列化的字元串變回 PHP 的值,可使用 unserialize()。serialize() 可處理除了 resource 之外的任何類型。甚至可以 serialize() 那些包含了指向其自身引用的數組。你正 serialize() 的數組/對象中的引用也將被存儲。
當序列化對象時,PHP 將試圖在序列動作之前調用該對象的成員函數 __sleep()。這樣就允許對象在被序列化之前做任何清除操作。類似的,當使用 unserialize() 恢復對象時, 將調用 __wakeup() 成員函數。
『貳』 php 數組傳值
這么多的元素啊
很明顯,傳值是不可以傳數組的,你可以先將數組序列化一下,到了那邊反序列化一下,就行了
『叄』 php函數中數組作為參數時是值傳遞還是引用傳遞
默認情況下,數組是值傳遞,只有對象是引用傳遞。
『肆』 PHP 有辦法把 方法參數傳遞給數組嗎
private $Menu = array();
public function setMenu($array){
$this -> Menu = $array;
}
這樣就行了呀,和一般的屬性變數一樣。
『伍』 php多數組傳遞參數問題,在線等
這是我自己寫的,看看是否能滿足你的需求,因為你的b函數沒有給出,所以我隨便構造了一個,這里我只接收了5個參數,還需要的話可以自行添加,給定默認值就行:
functionb($name,$data0='',$data1='',$data2='',$data3=''){
print_r([$name,$data0,$data1,$data2,$data3]);
}
functiona($name,$data){
array_unshift($data,$name);
call_user_func_array('b',$data);
}
a('name',['1','2']);
『陸』 php soap擴展做webservice的時候 如何傳入數組或者對象參數
SOAP可以傳遞數組和對象,比較復雜不便詳述。你可以在網上查閱SOAP的規范。SOAP的對象需要定義在wsdl里。這就要求java調用方也定義這些對象。
使用SOAP要注意一個問題:SOAP沒有統一的標准,不同語言對SOAP的實現有微小差別,有可能導致不兼容。
編寫SOAP的wsdl是件麻煩而且痛苦的事。你可以試試使用第三方庫。Yii框架就提供一個強大的SOAP解決方案。你可以通過注釋和類,自動生成wsdl。個人不推薦在PHP中使用SOAP,因為PHP不像其他語言類似JAVA、.NET,提供強大的SOAP支持。
你可以考慮輕量級API,也可以考慮XML-RPC。並不比SOAP差,而且很靈活。
望採納,謝謝!
『柒』 請問在PHP里是如何把數組作為參數傳遞給函數
數組可以直接作為參數傳進函數去的.
-----------
如果你想把數組傳進去經過函數處理後,不通過return獲取數組的變化.你可以把數組的引用傳進去.例如
$a
=
array(1,2,3);
test($a);
print_r($a);//你就會發現.$a已經和之前不一樣了
function
test(&$a){
$a[3]
=
4;
//給數組$a增加一個元素
}
『捌』 php的數組傳遞
可用serialize()函數將數組字元串化,
然後用unserialize()處理一下,就把數組傳到下個頁面了.
page1:
<input type="hidden" name="array2string" value="<?=htmlspecialchars(serialize($array)) ?>">
page2:
$array = unserialize($_REQUEST["array2string"]);
『玖』 php數組傳值的問題
這個函數沒有這種用法。換個思路試試
$arr=array(1,2,3,4);
functionmyfunction($v){
global$arr;//http://localhost/wk/www/php/global.html
//....
}
『拾』 php 超鏈接里的參數如何傳遞數組
需要准備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開php編輯器,新建php文件,例如:index.php。