我在Windows Server 2008 R2 server with PHP5.4 and SQLSRV
已安装的设备上运行 IIS7。
基本问题是,当我尝试检索某些值时,额外/未知字符会添加到返回值中。
$options = array(PDO::SQLSRV_ATTR_ENCODING => PDO::SQLSRV_ENCODING_SYSTEM);
$this->db = new PDO("sqlsrv:server=$host;Database=$dbname",$user,$pass,$options);
$this->stmt =$this->connection->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL, PDO::SQLSRV_ATTR_CURSOR_SCROLL_TYPE => PDO::SQLSRV_CURSOR_BUFFERED));
$this->stmt->execute();
$this->obj = $this->stmt->fetch(PDO::FETCH_OBJ)
$this->obj->$column;
$column
“”之类的东西在哪里ID
。
当我对返回的值运行 var_dump 时,它会读出string(4) "455"
. 如果我将 $strB 设置为"455", $strA == $strB
评估为假...
我试过iconv and utf8_decode
返回值,以及设置不同的PDO
编码,都没有成功。
数据库排序规则设置为SQL_Latin1_General_CP1_CI_AS
. 对此的任何帮助将不胜感激!