解决数据库中的中文数据在页面显示乱码的问题
在连接的$connectionInfo中设置"CharacterSet" => "UTF-8",指定编码方式即可
$connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>$database,"CharacterSet" => "UTF-8");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
<?php $serverName = "als.cn,578"; //数据库服务器地址
$uid = "te_b"; //数据库用户名
$pwd = "al46"; //数据库用户密码
$database="DBAliTemp";//数据库名称
$connectionInfo = array("UID"=>$uid, "PWD"=>$pwd, "Database"=>$database,"CharacterSet" => "UTF-8");
$conn = sqlsrv_connect( $serverName, $connectionInfo);if( $conn === false )
{ echo "Could not connect.\n"; die( print_r( sqlsrv_errors(), true));
} /* Set up and execute the query. */
$tsql = " select * from 零售通补货单列表 where 仓库='LST重庆省仓' and 状态='收货完成' order by 创建时间 desc";
//$tsql = iconv("UTF-8", "GB2312//IGNORE", $tsql );$stmt = sqlsrv_query( $conn, $tsql);
if( $stmt === false)
{ echo "Error in query preparation/execution.\n"; die( print_r( sqlsrv_errors(), true));
} $return = ['status'=>0,'msg'=>'','data'=>[]];
/* Retrieve each row as an associative array and display the results.*/
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC))
{ // echo $row['LastName'].", ".$row['FirstName']."\n"; $get_arr[] = $row;
} $return['msg'] = 'SUCCESS';
$return['status'] = 1;
$return['data'] = $get_arr;var_dump($return );//$json_str=json_encode($return['data'],true);
//echo $json_str;/* Free statement and connection resources. */
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
?>
<?php/**1、echo 是语言结构,不是函数或者方法,使用的时候可以不加括号,多用于单行字符串的输出,效率高于print */echo 'echo大家好<hr/>';echo('echo大家好<hr/>');/**2、print()主要用于打印字符串,也是单行输出,但他是函数,使用时要把字符串做为参数传给print()函数 */print('print大家好<hr/>');print 'print大家好<hr/>';/*** 3、 print_r打印复合类型 如数组 对象--调试专用,但呈现效果不如var_dump* 可以用来遍历并输出数组的函数,我一般是在调试程序的过程中用来查看数组内容的。* 也可以用来输出单一的字符串。一般只在调试程序过程中使用。程序写好后,要把这东东去掉。* 可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。* 但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。* */print_r('print_r大家好<hr/>');$array = [1,3.14,'tony',true,[3,4,5]];print_r($array);// print_r 'print_r大家好<hr/>'语法不支持,必须加()进行调用/**4、 var_dump--调试专用* 判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。* 此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。* 数组将递归展开值,通过缩进显示其结构。* */var_dump('var_dump大家好<hr/>');$array = [1,3.14,'tony',true,[3,4,5]];var_dump($array);
?>