GetElemenTbY_Dc3741964
2018-01-13 18:06
/*函数调用部分*/
public static function find($tables,$where=null,$fields='*',$group=null,$hanving=null,$order=null,$limit=null){
$sql = 'select '.self::parseFields($fields).' from '.$tables
.self::parseWhere($where)
.self::parseGRoup($group)
.self::parseHaving($hanving)
.self::parseOrder($order)
.self::parseLimit($limit);
$dataAll = self::getAll($sql);
return count($dataAll)==1?$dataAll[0]:$dataAll;
}
/*解析order by 部分*/
public static function parseOrder($order){
$orderStr = '';
if(is_array($order)){
$orderStr = ' order by '.join(',',$order);
}elseif(is_string($order)&&empty($order)){
$orderStr = ' order by '.$order;
}
return $orderStr;
}
/*执行调用部分*/
$tables = 'cj_setting';
var_dump($PdoMySQL->find($tables,null,'*',null,null,'present desc','4,3'));
老师和各位前辈大哥大姐,能给解惑么,万分感谢,可能是我粗心,但是我真没发现那里错了。。
如果我在limit的参数中添加错误的,就会报错,添加正确的,能正常获取数据,但确确实实,order by部分被忽略掉了。。
elseif(is_string($order)&&empty($order))这里empty前面漏了个感叹号取反吧,应该是!empty($order)
PDO—数据库抽象层
30043 学习 · 396 问题
相似问题