【发布时间】:2013-12-06 17:18:16
【问题描述】:
我正在研究一种 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>';
}
}
【问题讨论】:
-
哪一行给出了错误?
-
会不会是您缺少
}? -
去掉public这个词;)
-
我将您的方法复制到类定义中并且没有出错。您发布的内容与您的真实代码之间一定存在差异。
-
尝试发布其余代码。我刚刚复制了你的方法,它解析得很好。
标签: php arrays methods syntax-error