如何使用 CI 在以下查詢中添加 where 子句?例如 WHERE name = 'Joe'
<?php
include 'dbclass.php';
$db = new DB();
$users = $db->getRows('users',array('order_by'=>'id DESC'));
if(!empty($users)):
$count = 0;
foreach($users as $user):
$count ;
?>
dbclass.php 片段:
public function getRows($table,$conditions = array()){
$sql = 'SELECT ';
$sql .= array_key_exists("select",$conditions)?$conditions['select']:'*';
$sql .= ' FROM '.$table;
if(array_key_exists("where",$conditions)){
$sql .= ' WHERE ';
$i = 0;
foreach($conditions['where'] as $key => $value){
$pre = ($i > 0)?' AND ':'';
$sql .= $pre.$key." = '".$value."'";
$i ;
}
}
if(array_key_exists("order_by",$conditions)){
$sql .= ' ORDER BY '.$conditions['order_by'];
}
if(array_key_exists("start",$conditions) && array_key_exists("limit",$conditions)){
$sql .= ' LIMIT '.$conditions['start'].','.$conditions['limit'];
}elseif(!array_key_exists("start",$conditions) && array_key_exists("limit",$conditions)){
$sql .= ' LIMIT '.$conditions['limit'];
}
$result = $this->db->query($sql);
我需要幫助傳遞 Where 子句條件。我正在使用 Codeignitor 4。
uj5u.com熱心網友回復:
不確定codeigniter部分在哪里,看起來像你寫的代碼,所以只需where像這樣向你傳遞的陣列添加一個鍵
$users = $db->getRows('users',array('where' => ["name => 'Joe']",
'order_by'=>'id DESC'));
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/442487.html
