Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP OOP和MySQLi connection=致命错误:调用未定义的方法MySQLi::arrayQuery()_Php_Mysql_Oop_Pdo_Mysqli - Fatal编程技术网

PHP OOP和MySQLi connection=致命错误:调用未定义的方法MySQLi::arrayQuery()

PHP OOP和MySQLi connection=致命错误:调用未定义的方法MySQLi::arrayQuery(),php,mysql,oop,pdo,mysqli,Php,Mysql,Oop,Pdo,Mysqli,请告诉我我做错了什么?如何更好地与base合作?连接正常,但我看不到来自基地的信息。我刚刚得到: 致命错误:调用未定义的方法mysqli::arrayQuery() 我不明白如何修复它,谷歌也没有帮助 <?php class Proc{ protected $DB; function __construct(){ $this->DB=new mysqli('localhost', 'user', 'password', 'basename');

请告诉我我做错了什么?如何更好地与base合作?连接正常,但我看不到来自基地的信息。我刚刚得到:


致命错误:调用未定义的方法mysqli::arrayQuery()

我不明白如何修复它,谷歌也没有帮助

<?php
class Proc{
    protected $DB;
    function __construct(){
        $this->DB=new mysqli('localhost', 'user', 'password', 'basename');
        $this->DB->query("set names utf8");}
    function __destruct(){unset($this->DB);}
    function GetAll(){
        $sql="SELECT * FROM users";
        $result = $this->DB->arrayQuery($sql, SQLITE_ASSOC);
        return $result;}
}

$Yo = new Proc();

$users = $Yo->GetAll();
echo "All users: ".count($users);
foreach ($users as $user){
    $id = $user["ID"];
    $n = $user["Name"];
    echo "{$id} - {$n}<br/>";}
?>

一个小补丁,所有的工作完美!谢谢大家

<?php
class Proc{
    protected $DB;
    function __construct(){
        $this->DB=new PDO("mysql:host=localhost;dbname=basename", user, password);
        $this->DB->query("set names utf8");}
    function __destruct(){unset($this->DB);}
    function GetAll(){
        $sql="SELECT * FROM users";
        $result = $this->DB->query($sql);
        return $result;}
}
$Yo = new Proc();
$users = $Yo->GetAll();
foreach ($users as $user){
    $id = $user["ID"];
    $n = $user["Name"];
    echo "{$id} - {$n}<br/>";}
?>

您使用的是什么数据库
SQLite
还是
mysql


因为根据,我猜函数
arrayQuery
只能用于SQLite数据库

调用未定义的方法mysqli::arrayQuery()-我的意思是错误消息是cear,不是吗?如果您发现
arrayQuery
不可用,是否可以发布此函数(mysqli类没有这样的方法)。此外,最好切换到PDOYSQL 5.5.37,并以“mysqli”的形式连接。所以这不是SQLite?不……这是您拥有的mysql数据库,并且由于您已经初始化了“mysqli”,mysqli类没有该方法