今天写了这个一段代码
function ip_get_method($action , $device){ if($action != 'search'){ request_die(false,'unknown action'); } $mysqli = open_database(); $stmt = $mysqli->prepare("select * from ip_addr WHERE device = ?"); $stmt->bind_param("s",$device); $stmt->execute(); $result = $stmt->get_result(); if(!$result || $result->num_rows == 0) { $mysqli->close(); request_die(false,'no such device'); } $set = $result->fetch_assoc(); echo json_encode(array('code'=>true,'ip'=>$set['ip'])); }
但是一用就报错,显示 mysqli_stmt::get_result () 这个方法未定义。
网上一查发现官网文档有这么一段话
MySQL Native Driver Only
Available only with mysqlnd.
原来这个函数必须安装mysqlnd驱动才能使用。
Ubuntu上
sudo apt-get install php5-mysqlnd
安装驱动即可。