我正在運行IIS7上安裝的Windows Server 2008 R2 server with PHP5.4 and SQLSRV
。SQLSRV PDO驅動程序將額外字符添加到整數
基本問題是,當我嘗試檢索某些值時,將額外/未知字符添加到返回的值。
$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
評估爲false ...
我試過iconv and utf8_decode
上的返回值,以及設置不同的PDO
編碼,都沒有成功。
數據庫排序規則設置爲SQL_Latin1_General_CP1_CI_AS
。任何幫助,將不勝感激!