![](/img/trans.png)
[英]PHP Fatal error: Call to undefined function mysqli_stmt_get_result()
[英]Mysqli_stmt_get_result returning fatal error in PHP 5.5.3
我正在運行安裝了php 5.5.3的apache2本地開發服務器。 由於某種原因,我得到了錯誤
Fatal error: Call to undefined function mysqli_stmt_get_result()
在我所有的頁面上。 我已經在php文檔中閱讀到get_result()方法需要MySQL本機驅動程序(mysqlnd),但是在MySQL網站上它說:“從PHP 5.4開始,mysqlnd庫是所有PHP MySQL的php.net編譯時默認值擴展名”。 無論如何我都嘗試安裝php5-mysqlnd,當我這樣做時,它會覆蓋以前的mysql和mysqli conf文件,導致我得到錯誤
Fatal error: Call to undefined function mysqli_connect()
當我重新安裝php5-mysql時,它將刪除mysqlnd軟件包。 我並不真的在乎安裝軟件包,我更想知道為什么mysqlnd在PHP 5.5.3中不被視為軟件包,應該如何啟用它? 提前致謝!
在Ubuntu 13.10上運行的Apache 2服務器:
[~]$ php5 --version
PHP 5.5.3-1ubuntu2 (cli) (built: Oct 9 2013 14:49:12)
Copyright (c) 1997-2013 The PHP Group
[~]$ mysql --version
mysql Ver 14.14 Distrib 5.5.34, for debian-linux-gnu (x86_64) using readline 6.2
編輯:
我已經將擴展名添加到位於/etc/php5/apache2/php.ini的php.ini文件中。 該文件顯示為:
; If you wish to have an extension loaded automatically, use the following
; syntax:
;
; extension=modulename.extension
;
; For example, on Windows:
;
; extension=msql.dll
;
; ... or under UNIX:
;
; extension=msql.so
;
; ... or with a path:
;
; extension=/path/to/extension/msql.so
extension=/usr/lib/php5/20121212/curl.so
extension=/usr/lib/php5/20121212/json.so
extension=/usr/lib/php5/20121212/mysqli.so
extension=/usr/lib/php5/20121212/mysql.so
extension=/usr/lib/php5/20121212/mysqlnd.so
檢查您的php.ini
以檢查MySQLi的擴展名是否未注釋。.它的外觀示例如下:
extension=php_ldap.dll
;extension=php_mssql.dll
;extension=php_mbstring.dll
;extension=php_exif.dll ; Must be after mbstring as it depends on it
extension=php_mysql.dll
extension=php_mysqli.dll
如果有;
然后刪除它,將更改保存到php.ini並通過調用重新啟動apache:
/etc/init.d/apache restart
如果不確定php.ini的位置,請使用以下命令創建一個簡單頁面:
<?php
phpinfo();
?>
並檢查以下行:
加載的配置文件:dir / to / php.ini
甚至運行phpinfo();
首先檢查:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.