bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

php數組如何轉編碼

php數組轉編碼的方法:1、使用iconv函數遍歷數組轉換字符集;2、利用var_export和eval方法實現轉換;3、利用遞歸將數組進行轉碼。

瑞麗網站制作公司哪家好,找創新互聯公司!從網頁設計、網站建設、微信開發、APP開發、成都響應式網站建設公司等網站項目制作,到程序開發,運營維護。創新互聯公司于2013年開始到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯公司

推薦:《PHP視頻教程》

PHP數組中文字符編碼互相轉換的三種解決方法

一、使用iconv函數遍歷數組轉換字符集

/*
* 字符串/二維數組/多維數組編碼轉換
* @param string $in_charset
* @param string $out_charset
* @param mixed $data
*/
function array_iconv($data, $in_charset='GBK', $out_charset='UTF-8'){
if (!is_array($data)){
$output = iconv($in_charset, $out_charset, $data);
}elseif(count($data)===count($data, 1)){//判斷是否是二維數組
foreach($data as $key => $value){
$output[$key] = iconv($in_charset, $out_charset, $value);
}
}else{
eval_r('$output = '.iconv($in_charset, $out_charset, var_export($data,
TRUE)).';');
}
return $output;
}

二、利用var_export(), eval()方法

/** * 將含有GBK的中文數組轉為utf-8 * * @param array $arr 數組 * @param string
$in_charset 原字符串編碼 * @param string $out_charset 輸出的字符串編碼 * @return array
*/ function array_iconv($arr, $in_charset="gbk", $out_charset="utf-8") {
$ret = eval('return
'.iconv($in_charset,$out_charset,var_export($arr,true).';')); return
$ret; // 這里轉碼之后可以輸出json // return json_encode($ret); }

原理很簡單

var_export設置第二個參數為true,返回數組原型字符串,將字符串轉換為utf-8編碼,之后再用eval來執行返回(類似匿名函數?),至此完美解決問題。

eval() 函數小結:

條件:eval() 函數把字符串按照 PHP 代碼來計算。該字符串必須是合法的 PHP 代碼,且必須以分號結尾。

如果沒有在代碼字符串中調用 return 語句,則返回 NULL。如果代碼中存在解析錯誤,則 eval() 函數返回 false。

$a ="hello"; $res = eval("return $a;"); print_r($res); //

在賦值時必須用反斜杠對$標示符進行轉義 eval("\\$str = \\"$str\\";"); echo $str;

三、利用遞歸將數組轉碼(當eval被禁用時)

/** * UTF-8編碼 GBK編碼相互轉換/(支持數組) * * @param array $str 字符串,支持數組傳遞 * @param
string $in_charset 原字符串編碼 * @param string $out_charset 輸出的字符串編碼 *
@return array */ function array_iconv($str, $in_charset="gbk",
$out_charset="utf-8") { if(is_array($str)) { foreach($str as $k => $v) {
$str[$k] = array_iconv($v); } return $str; } else { if(is_string($str))
{ // return iconv('UTF-8', 'GBK//IGNORE', $str); return
mb_convert_encoding($str, $out_charset, $in_charset); } else { return
$str; } } }

分享題目:php數組如何轉編碼
網站路徑:http://vcdvsql.cn/article24/chohce.html

成都網站建設公司_創新互聯,為您提供做網站、商城網站、外貿網站建設、網站制作、企業網站制作、全網營銷推廣

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管