Php 在一个数组中?
所以我有一个数组Php 在一个数组中?,php,Php,所以我有一个数组 $date1 = "12/31/12"; $date2 = "01/01/13"; $a = array( 'all' => true, 'upcoming'=>true, 'date'=>$date1, //'date'=>$date2, 'is_nye'=>true, 'where'=>$whe
$date1 = "12/31/12";
$date2 = "01/01/13";
$a = array(
'all' => true,
'upcoming'=>true,
'date'=>$date1,
//'date'=>$date2,
'is_nye'=>true,
'where'=>$where,
'status'=>'A'
);
我想检查查询是否有两个日期,我该怎么做?正如我所知,如果我在当前状态下添加它,它将只显示date2,因为它取代了原始日期。只需以不同的方式命名键:
$a = array(
'all' => true,
'upcoming'=>true,
'date_1'=>$date1,
'date_2'=>$date2,
'is_nye'=>true,
'where'=>$where,
'status'=>'A'
);
似乎您正在尝试使用重复的键构建数组,但这是无法完成的: 由于无法存储您试图存储的数组(使用重复键),因此当然无法检索值 答案是使用不同的数据结构,或者将密钥重命名为唯一的 我想我要做的是,将
date
本身作为一个数组,所以类似于
$a = array(
'all' => true,
'upcoming'=>true,
'date'=>array(
$date1,
$date2
),
'is_nye'=>true,
'where'=>$where,
'status'=>'A'
);
您可以使用:
$a = array(
'all' => true,
'upcoming'=>true,
'date1'=>$date1,
'date2'=>$date2,
'is_nye'=>true,
'where'=>$where,
'status'=>'A'
);
要构造查询,请执行以下操作:
if($a['date2']){
$query .= "AND date2 = '" . $a['date2'] . "'";
}
您的查询似乎已丢失。您是否正在使用它生成SQL查询?你能不能解释一下你正在做什么,因为这还不清楚?正如其他人提到的,你要么需要使用不同的键,要么修改数据结构——很难说哪一个更好,看看你将如何构建查询(或者更好,数据库中的基础表)。为什么这是最好的方法?现在没有date1或date2的上下文,开发人员必须知道多维数组的哪个元素包含正确的日期值。