2017-03-17 99 views
3

前幾天,I asked a question about a bug I found in LaravelDB返回字符串而不是int(mysqlnd for PHP-7.1/Laravel)

爲了解決這個問題,我在我的服務器上安裝了php5-mysqlnd。

今天,我將我的應用程序升級到了最新的php 7.1。*。一切工作正常,除了錯誤再次回來,即數據庫中的整數作爲字符串返回,這不符合我的嚴格比較。

我試圖找到一個用於php 7.1的mysqlnd包,但是沒有(但?)。但mysqlnd似乎啓用,雖然...

的phpinfo()

PHP Version => 7.1.3-2+0~20170315222009.20+jessie~1.gbpc7e7dd 
System => Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) x86_64 

mysqlnd 
mysqlnd => enabled 
Version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $ 

pdo_mysql 
PDO Driver for MySQL => enabled 
Client API version => mysqlnd 5.0.12-dev - 20150407 - $Id: b396954eeb2d1d9ed7902b8bae237b287f21ad9e $ 

輸出在localhost:

「身份證」 上的服務器=> 5

輸出:

「ID」=> 「5」

1 /有別的我應該看?

2 /在一般情況下,我應該重構我的代碼接受數據庫中的字符串,而不是期望整數?

謝謝。

+0

您是否在爲您的查詢使用'mysqli'或'PDO'? –

+0

@TomUdding我正在使用Laravel 5.4和PDO。 – Jachinair

+0

你用於表中'id'字段的數據類型? –

回答

2

嘆氣,我很笨!至少我今天學到了一些東西。

phpinfo()來自控制檯的php版本,而不是Apache。 原來php7.1和mysqlnd未在Apache中加載。

現在一切正常...

+0

保重,php可以有很多ini文件 –

相關問題