PHPÖÐÎÄÂÒÂë½â¾ö·½°¸

¡¡¡¡ºº×ÖÂÒÂëÕæÊÇÒ»¸ö±¯´ßµÄÊÂÇ飬JAVAÌÖÑẺ×Ö£¬PHPÒ²²»Ï²»¶ºº×Ö£»

¡¡¡¡JavaÂÒÂë×îÖÕʹÓÃÁËspring¸ø³öµÄ¹ýÂËÆ÷À´¹ýÂË£¬´¦´¦¹ýÂË£¬ÆäʵӰÏìÁËËÙ¶È£¬²»¹ýûÓа취£¬ºº×Ö¾ÍÊÇW¹úÊ×ÏȲ»¿¼ÂǵÄÊÂÇ飻

¡¡¡¡Ïë²»µ½PHPÒ²ÊÇÂÒÂë´¦´¦ÔÚ£¬µ±ÄãʹÓÃÇ×ÐÖµÜMySQLµÄʱºò£¬ºº×ÖÏÔµÃÄÇôÇ×ÇУ¬´Óδ¿¼ÂǹýËû»á±ä³ÉÌìÊ飻²»¹ýΪÁËºÍÆäËûÆäËû½»»¥£¬°ÑPHPµÄÊÖÉìµ½SQL SERVERµÄʱºò£¬ÂÒÂëÀ´ÁË£¬Ô­ÒòÊǵÚÈý·½ÏµÍ³ÓõÄGBK±àÂ룻

¡¡¡¡°¥£¬×ª»»°É£»

¡¡¡¡   1£¬PHP×Ô´øµÄת»»º¯ÊýICONV,Ò»¸ö¸ß´óÉϵĺ¯Êý£»

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡string iconv ( string $in_charset , string $out_charset , string $str )

¡¡¡¡Ê¹ÓÃDEMO£º

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡<?php

¡¡¡¡$text = "This is the Euro symbol '€'.";

¡¡¡¡echo 'Original : ', $text, PHP_EOL;

¡¡¡¡echo 'TRANSLIT : ', iconv("UTF-8", "ISO-8859-1//TRANSLIT", $text), PHP_EOL;

¡¡¡¡echo 'IGNORE   : ', iconv("UTF-8", "ISO-8859-1//IGNORE", $text), PHP_EOL;

¡¡¡¡echo 'Plain    : ', iconv("UTF-8", "ISO-8859-1", $text), PHP_EOL;

¡¡¡¡?>

¡¡¡¡´ó¼Ò¶¼ÍƼöµÄº¯Êý£¬²»¹ýʹÓÃÖ®ºóÎÞ·¨×ª»»£¬Ã»ÓдíÎó£¬×Ö·ûҲûÓÐת»»£¬NO!

¡¡¡¡  2£¬Áí±Ùõè¾¶£¬»¹ÓÐÒ»¸ö´ó¼ÒÖÊÒÉЧÂʲ»¸ßµÄº¯Êý£¬²»¹ýÎÞÂÛÈçºÎ£¬ÏÈʵÏÖÔÙ¿¼ÂÇÆäËûÈý

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡//¼ì²é¸Ãº¯ÊýÊÇ·ñ¿ÉÓÃ

¡¡¡¡echo function_exists('mb_convert_encoding');

¡¡¡¡//¼ì²âµ±Ç°±àÂë

¡¡¡¡echo mb_detect_encoding($val, "GBK, GB2312, UTF-8");

¡¡¡¡//ת»»±àÂ룬°ÑCP936(¾ÍÊÇGBK)ת»»³ÉUTF-8

¡¡¡¡$v=mb_convert_encoding ($val, "UTF-8", "CP936");

¡¡¡¡½á¹û³É¹¦ÁË;

¡¡¡¡ºÃ°É£¬ÏÈÓÃ×Űɣ¬ÎªÁËת»»Êý¾Ý¿â²éѯµÄ½á¹û¼¯£¬ÖÆ×÷Ò»¸öת»»º¯Êý£º

¡¡¡¡  1£¬º¯Êý¡°ÂÒÂë¿ËÐÇ¡±£º

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡// $fContents ×Ö·û´®

¡¡¡¡// $from ×Ö·û´®µÄ±àÂë

¡¡¡¡// $to Ҫת»»µÄ±àÂë

¡¡¡¡function auto_charset($fContents,$from='gbk',$to='utf-8'){

¡¡¡¡$from   =  strtoupper($from)=='UTF8'? 'utf-8':$from;

¡¡¡¡$to       =  strtoupper($to)=='UTF8'? 'utf-8':$to;

¡¡¡¡if( strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents)) ){

¡¡¡¡//Èç¹û±àÂëÏàͬ»òÕß·Ç×Ö·û´®±êÁ¿Ôò²»×ª»»

¡¡¡¡return $fContents;

¡¡¡¡}

¡¡¡¡if(is_string($fContents) ) {

¡¡¡¡if(function_exists('mb_convert_encoding')){

¡¡¡¡return mb_convert_encoding ($fContents, $to, $from);

¡¡¡¡}else{

¡¡¡¡return $fContents;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡elseif(is_array($fContents)){

¡¡¡¡foreach ( $fContents as $key => $val ) {

¡¡¡¡$_key =     auto_charset($key,$from,$to);

¡¡¡¡$fContents[$_key] = auto_charset($val,$from,$to);

¡¡¡¡if($key != $_key )

¡¡¡¡unset($fContents[$key]);

¡¡¡¡}

¡¡¡¡return $fContents;

¡¡¡¡}

¡¡¡¡else{

¡¡¡¡return $fContents;

¡¡¡¡}

¡¡¡¡}

¡¡¡¡2£¬Ê¹Óãº

¡¡¡¡

¸´ÖÆ´úÂë ´úÂëÈçÏÂ:

¡¡¡¡//´òÓ¡Êä³ö²éѯ½á¹û£¨¼ÙÉèÄãµÄ½á¹û£©

¡¡¡¡$arr=array();

¡¡¡¡while($list=mssql_fetch_row($row))

¡¡¡¡{

¡¡¡¡$arr[]=$list;

¡¡¡¡}

¡¡¡¡$s=auto_charset($arr,'gbk','utf-8');

¡¡¡¡//´òÓ¡ÊÔÊÔ£¬ÔÚä¯ÀÀÆ÷ÉèÖñàÂëΪUFT-8£¬¿´Ã»ÓÐÂÒÂë

¡¡¡¡print_r($s);die();

¡¡¡¡ÒÔÉÏËùÊö¾ÍÊDZ¾ÎĹØÓÚphpÖÐÎÄÂÒÂëµÄ½éÉÜÁË£¬Ï£Íû´ó¼ÒÄܹ»Ï²»¶¡£