php中一個神奇的函數extract

看源碼時遇到的一個php函數,比較神奇!

常用於:將 wddx_deserialize() 返回的結合數組中的內容導入到符號表變量中去。

測試代碼,用法如下:

echo '<pre>';
	$host = 'lyf3312';
	$arr = [
		'host' => 'www.g.cn',
		'uname' => 'root',
		'pwd' =>'root',
		'[email protected]'
	];
	extract($arr);//默認覆蓋已經存在的變量
	var_dump($host);
	extract($arr,EXTR_SKIP); // 跳過已經存在的變量,即不會覆蓋已經存在的變量
	extract($arr,EXTR_PREFIX_SAME,'lyf'); //如果和已經存在變量衝突,則在變量名前添加前綴lyf
	var_dump($lyf_host);
	extract($arr,EXTR_PREFIX_ALL,'test');//對所有變量名添加前綴test
	var_dump($test_host);
	extract($arr,EXTR_REFS); //引用方式,建立變量;
	$uname = 'lyf';
	var_dump($arr);
	$res = extract($arr,EXTR_PREFIX_INVALID,'no');//在非法或數字變量前加前綴no
	echo $res; //導出的變量個數
	var_dump($no_0); //第一個數字變量
	var_dump($pwd);



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章