php方法意外的t_字符串

php方法意外的t_字符串,php,arrays,methods,syntax-error,Php,Arrays,Methods,Syntax Error,我正在处理一个php方法,它在方法体的第三行给了我一个语法错误。评论这句话对我没有任何帮助。只有通过注释掉整个方法,它才能真正消失。我是不是遗漏了什么 public function get(Array $array) { if(array_key_exists('data', $array)) { if($array['data'] == '*') { $fieldString = '*'; } else {

我正在处理一个php方法,它在方法体的第三行给了我一个语法错误。评论这句话对我没有任何帮助。只有通过注释掉整个方法,它才能真正消失。我是不是遗漏了什么

public function get(Array $array) {
    if(array_key_exists('data', $array)) {
        if($array['data'] == '*') {
            $fieldString = '*';
        } else { 
            $fieldString = '';
            for($x=0; $x < count($array['data']); $x++) {
                if($x == count($array['data']) - 1 ) {
                    $fieldString .= $array['data'][$x].' ';
                } else {
                    $fieldString .= $array['data'][$x].', ';
                }
            }
        }
        if(array_key_exists('table', $array)) {
            $table = $array['table'];
        }
        if(array_key_exists('conditions', $array)) {
            $condition = $array['conditions'];
            $filter = '';
            foreach($condition['cond'] as $cond) {
                if(array_key_exists('type', $cond)) { 
                    $filter .= $cond['type'].' ';
                }
                if(array_key_exists('field', $cond)) {
                    $filter .= $cond['field']. ' = '; 
                }
                if(array_key_exists('value', $cond)) {
                    $filter .= $cond['value'];
                }
            }
        }

        $result = $mysqli->query("SELECT ".$fieldString." FROM ".$table. " ".$filter);
        $response = $result->fetch_assoc();
        if(!empty($response)) {
            return $response;
        } else {
            echo 'response array from get model is empty';
        }
    } else {
        echo '<h3>array data not set for _get() in model </h3>';
    }    
}
公共函数get(数组$Array){
如果(数组\键\存在('data',$array)){
如果($array['data']=='*')){
$fieldString='*';
}否则{
$fieldString='';
对于($x=0;$xquery(“从“$table.”“$filter”中选择“$fieldString.”);
$response=$result->fetch_assoc();
如果(!空($response)){
返回$response;
}否则{
echo“来自get模型的响应数组为空”;
}
}否则{
echo“未为模型中的_get()设置数组数据”;
}    
}

是类中包含的方法。有时我不小心将一个类函数放在类文件的末尾,但在结尾}之外。如果不是类方法,请删除“public”。

将$mysqli->query()更改为$this->mysqli->query()

我假设您创建了一个类方法mysqli,但您在调用它时没有使用“$this”。 如果mysqli是php函数,那么它应该是mysqli_query($this->token,“query”)


尽管如此,您应该得到“未定义变量”。无论如何,此方法中未定义$mysqli。

哪一行给出了错误?可能是您缺少了一个
}
?只需删除单词public;)我将你的方法复制到一个类定义中,没有得到任何错误。你发布的代码与真实代码之间一定有差异。请尝试发布其余代码。我刚刚复制了你的方法,它解析得很好。当我试图在类之外定义这个方法时,我得到了一个
解析错误
,而不是
意外的T\u字符串
。很好。我看到了(T_PUBLIC)并建立了连接,我把这个方法放在一个类模型{function get(){…}中。我做了检查,以确保类大括号围绕它,并且该类中的所有其他代码都被注释掉,以消除其他因素