我在尝试弄清楚如何填充多维数组时遇到困难。 假设我有一个包含不同账单日期的交易表。 首先,我有一个数组,用于检索以下“计费”日期:
Array
(
[0] => Array
(
[BILLED] => 2011-11-18 00:00:00
)
[1] => Array
(
[BILLED] => 2011-11-22 00:00:00
)
)
我还有以下查询,当前已硬编码为上面显示的两个“计费”日期之一:
$qryOrders = $this->db->query("
SELECT tblOrders.*
FROM tblOrders
WHERE tbltc.BILLED = '2011-11-22'");
$data['Orders'] = $qryOrders->result_array();
我知道我可以使用 count($Orders) 轻松确定数组项的数量;但是我如何才能传递 2011 年 11 月 18 日和 2011 年 11 月 22 日的每个“计费”日期,以便确定这两个指定日期的总体计数?
我希望我已经解释得足够清楚了。 我想我可能需要某种 foreach 循环,每次通过循环时我都可以传入计费日期,并跟踪每次循环时的运行总计。
// this is getting all results for a record
$sql =
<<<sql
SELECT tblOrders.*
FROM tblOrders
WHERE tbltc.BILLED between '{$arr[0]}' and '{$arr[1]}'
sql;
// this is to get total count of matched record
// $sql = 'select count(*) from ..';
如果你使用CI,你可以轻松使用bind
示例:-
$sql = 'SELECT tblOrders.* FROM tblOrders WHERE tbltc.BILLED between ? AND ?';
$this->db->query($sql, array($arr[0], $arr[1]));