首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >MSSQL使用PHP检索UTF-8 json数据

MSSQL使用PHP检索UTF-8 json数据
EN

Stack Overflow用户
提问于 2014-04-14 19:56:29
回答 1查看 2.4K关注 0票数 1

嗨,我正试着用php从我的数据库中检索阿拉伯数据,但我得到的只是问号。数据库中存储良好的数据和列类型为nvarchar。

我试图将这个代码ini_set('mssql.charset', 'UTF-8');放到我的php中,但是它仍然不起作用。

下面是我的代码示例: db_connect.php:

代码语言:javascript
运行
复制
<?php

ini_set('mssql.charset', 'UTF-8');

$link=mssql_connect('SQL*******', 'username', 'password');

?>

get_about.php

代码语言:javascript
运行
复制
<?php

        include_once './db_connect.php';
        $sql ="SELECT * FROM About"; 
        $select = mssql_query($sql);

        if ($select) {
            while ($list = mssql_fetch_array($select)){
                $output = $list;
            }
            print json_encode($output);
        } else {
            print json_encode('fail select');
        }



?>
EN

回答 1

Stack Overflow用户

发布于 2014-06-21 21:21:44

试试这个

代码语言:javascript
运行
复制
<?php
$user = "user";
$pass = "Password";

//11.0 for SQL 2012,2014

$dsn = "Driver=SQL Server Native Client 11.0;Server=server.com;Port=1433;Database=database;";
$cx = odbc_connect($dsn,$user,$pass);

// Get the error message

if($cx === false) {
    throw new ErrorExcpetion(odbc_errormsg());
};
$resultset=odbc_exec($cx, "SELECT * FROM Table");


$json = array();

do {
     while ($row = odbc_fetch_array($resultset)) {
     $json[] = $row;
     }
} while ( odbc_next_result($resultset) );

/* Run the tabular results through json_encode() */
/* And ensure numbers don't get cast to trings */
echo json_encode($json);

odbc_close( $cx);

?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23069137

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档