一波未平一波又起,才连接成功SQL2008 结果又出现了中文乱码问题。那就接着找方法吧!学习的路上必须一个问题一个问题的解决处理,才能有所收获!上代码!
<?php
$Host = "192.168.110.28\sql2008"; //数据库服务器地址
$UserName = "sa"; //数据库用户名
$UserPasswd = "666666";//数据库用户密码
$DbName = "abwy"; //数据库名
$connectionInfo = array("UID"=>$UserName, "PWD"=>$UserPasswd, "Database"=>$DbName);
$conn = sqlsrv_connect($Host,$connectionInfo);
if( $conn == false)
{
echo "连接失败!";
die( print_r( sqlsrv_errors(), true));
}
$query = sqlsrv_query($conn, "SELECT Name,ID FROM TBL_Estate_AreaInformation ");
if( $query === false)
{
echo "Error in query preparation/execution.\n";
die( print_r( sqlsrv_errors(), true));
}
while($row = sqlsrv_fetch_array($query,SQLSRV_FETCH_ASSOC))
{
//string iconv ( string $in_charset , string $out_charset , string $str )
//PHP 自带的函数 将GBK 转为UTF-8 (方法1)
$row1 = iconv('GBK', 'UTF-8', $row['ID']);
$row2 = iconv('GBK', 'UTF-8', $row['Name']);
$val = $row1."-".$row2;
//print_r( function_exists('mb_convert_encoding')); //检查该函数是否可用
//检测当前编码
//echo mb_detect_encoding($val, "GBK, GB2312, UTF-8");
//转换编码,把CP936(就是GBK)转换成UTF-8 (方法2)
//$v=mb_convert_encoding ($val, "UTF-8", "CP936");
echo $val."<br/>";
}
?>
PHP也有万恶的中文乱码,解决方法:
http://my.oschina.net/acitiviti/blog/376010
php插入中文到sqlserver 2008里出现乱码的解决办法分享