PHP if.. elseif...else の問題
この投稿は、2013-12-08 10:09:44 に xytianshiwx によって最終編集されました
<br />
<?php<br />
$field_func="COUNT|AVG|FIRST|LAST|MAX|MIN|SUM|TOP";<br />
$where_field="Where|or|xor|and|in";<br />
$param="name";<br />
$sql_param_list=array();<br />
if(false!==strpos($param,",")){//判断是否存在“,”<br />
$sql_param_list["field"] = $param;<br />
}else{<br />
if(preg_match("/\b(".strtolower($field_func).")\b\((\*|[a-zA-Z_`])+\)/i", $param)){<br />
$sql_param_list["field"] =$param;<br />
}elseif(preg_match("/\b(".$where_field.")\b/i", $param)||preg_match("/(>|>|=)/i", $param)){//判断where<br />
$sql_param_list["where"] =$param;<br />
<br />
}elseif(preg_match("/\b(order|limit|group|)\b/i", $param,$param_name)){//判断order|limit|group<br />
switch ($param_name[0]){<br />
case "order" : $sql_param_list["order"] =$param;<br />
break;<br />
case "limit" : $sql_param_list["limit"] =$param;<br />
break;<br />
case "group" : $sql_param_list["group"] =$param;<br />
break;<br />
<br />
}<br />
}else{<br />
$sql_param_list["field"] =$param;<br />
}<br />
} <br />
print_r($sql_param_list);<br />
<br />
ログイン後にコピー
$param には $sql_param_list["field"] の値が割り当てられていませんか? ?
論理的な間違いですか、それとも何かアドバイスをお願いします。 ! !
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31