您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP if. elseif.else 有关问题

2026/1/5 18:21:24发布8次查看
php if.. elseif...else 问题
本帖最后由 xytianshiwx 于 2013-12-08 10:09:44 编辑
|>|=)/i, $param)){//判断where
$sql_param_list[where] =$param;
}elseif(preg_match(/\b(order|limit|group|)\b/i, $param,$param_name)){//判断order|limit|group
switch ($param_name[0]){
case order : $sql_param_list[order] =$param;
break;
case limit : $sql_param_list[limit] =$param;
break;
case group : $sql_param_list[group] =$param;
break;
}
}else{
$sql_param_list[field] =$param;
}
}
print_r($sql_param_list);

$param 没有赋值个$sql_param_list[field]??
逻辑错误还是其他错误,请高手指点指点!!!
分享到: 更多
------解决方案--------------------
array
(
[where] => name>10
)
为什么 $param 要赋值给 $sql_param_list[field] ?
你的 $param 是 name>10 里面并没有“,”
只有 if(preg_match(/\b(.$where_field.)\b/i, $param)
------解决方案--------------------
preg_match(/(>
------解决方案--------------------
>
------解决方案--------------------
=)/i, $param)){//
分支能进入
------解决方案--------------------
}elseif(preg_match(/\b(order
------解决方案--------------------
limit
------解决方案--------------------
group
------解决方案--------------------
)\b/i, $param,$param_name)){//判断order
------解决方案--------------------
limit
------解决方案--------------------
group
==> /\b(order
------解决方案--------------------
limit
------解决方案--------------------
group)\b/i, //正则多了个或

------解决方案--------------------
if(false!==strpos($param,,)){//判断是否存在“,”
那就更不对了,单个名字不会有“,”的
按照 sql 指令的文法范式
你应该逐次读取以空格符分隔的子串,判断它属于哪个语法成分
并且 sql 指令的每一节都是有特定标识的
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product