本文目錄一覽:
- 1、淺析PHP中的字符串編碼轉換(自動識別原編碼)
- 2、php怎樣判斷字符串是什麼編碼
- 3、php同樣的字符串為什麼編碼不同?
- 4、PHP 檢測字符串的編碼是否是UTF
- 5、php 怎樣判斷字符串是哪種編碼
淺析PHP中的字符串編碼轉換(自動識別原編碼)
本篇文章是對PHP中字符串編碼轉換的實現代碼進行了詳細的分析介紹,需要的朋友參考下
複製代碼
代碼如下:
/**
*
對數據進行編碼轉換
*
@param
array/string
$data
數組
*
@param
string
$output
轉換後的編碼
*/
function
array_iconv($data,$output
=
‘utf-8’)
{
$encode_arr
=
array(‘UTF-8′,’ASCII’,’GBK’,’GB2312′,’BIG5′,’JIS’,’eucjp-win’,’sjis-win’,’EUC-JP’);
$encoded
=
mb_detect_encoding($data,
$encode_arr);//自動判斷編碼
if
(!is_array($data))
{
return
mb_convert_encoding($data,
$output,
$encoded);
}
else
{
foreach
($data
as
$key=$val)
{
if(is_array($val))
{
$data[$key]
=
array_iconv($val,
$input,
$output);
}
else
{
$data[$key]
=
mb_convert_encoding($data,
$output,
$encoded);
}
}
return
$data;
}
}
php怎樣判斷字符串是什麼編碼
php判斷字符編碼的二個方法:
一個是用php自帶的函數mb_detect_encoding,一個是個人寫函數來處理。
方法1,使用mb_detect_encoding函數。
?
1
2
3
4
?php
$str=」a href=”” target=”_blank” class=”infotextkey”腳本/a」;
echo mb_detect_encoding($str);
?
方法2,自定義函數。
?
1
2
3
4
5
6
7
8
9
10
11
?php
function chkbm($string){
$bm = array(『ASCII』, 『GBK』, 『UTF-8′);
foreach($bm as $c){
if( $string === a href=”” target=”_blank” class=”infotextkey”iconv/a(『UTF-8′, $c, iconv($c, 『UTF-8′, $string))){//轉換編碼後是不是相等
return $c;
}
}
return null;
}
?
php同樣的字符串為什麼編碼不同?
你所說的同樣的字符串只是看起來同樣,你可以用if語句判斷一下$secret2和$secret1、$secret3是否相同
if($secret1==$secret2 $secret1==$secret3){echo”相同”;}
或者把$secret2的字符串複製到notepad++里,然後在字符串前面加個空格,你就會有所發現
PHP 檢測字符串的編碼是否是UTF
PHP用MBString庫的函數
$e=mb_detect_encoding($text, array(‘UTF-8’, ‘GBK’));
switch($e){
case ‘UTF-8’ : //如果是utf8編碼
break;
case 『GBK』: //如果是gbk編碼
break
}
php 怎樣判斷字符串是哪種編碼
php中有個函數可以用來檢查當前字符串的編碼類型
mb_detect_encoding($str,array(‘ASSCII’,”GB2312′,’UTF-8));
PHP用MBString庫的函數
$e=mb_detect_encoding($text, array(‘UTF-8’, ‘GBK’));
switch($e){
case ‘UTF-8’ : //如果是utf8編碼
break;
case 『GBK』: //如果是gbk編碼
break
}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/293874.html