Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php数组值与今天的日期比较';日期有效期是多少_Php_Arrays - Fatal编程技术网

php数组值与今天的日期比较';日期有效期是多少

php数组值与今天的日期比较';日期有效期是多少,php,arrays,Php,Arrays,我尝试以下方法: 比较阵列中今天的日期。计算打开或关闭的日期。并列出这些日期。并找出哪些日期处于联机或脱机状态 $dateArray=[]; $dateArray=[ “赫拉克勒斯”=>[“日期”=>[“开始”=>“2019-10-13”,“结束”=>“2021-01-01”],//开启 'serto'=>['date'=>['start'=>'2019-12-11','end'=>'2019-12-20']],//关闭 “alex”=>[“日期”=>[“开始”=>“2019-08-20”,“结

我尝试以下方法:
比较阵列中今天的日期。
计算打开或关闭的日期。
并列出这些日期。
并找出哪些日期处于联机或脱机状态

$dateArray=[];
$dateArray=[
“赫拉克勒斯”=>[“日期”=>[“开始”=>“2019-10-13”,“结束”=>“2021-01-01”],//开启
'serto'=>['date'=>['start'=>'2019-12-11','end'=>'2019-12-20']],//关闭
“alex”=>[“日期”=>[“开始”=>“2019-08-20”,“结束”=>“2023-01-05”],//打开
“赫伯特”=>[“日期”=>[“开始”=>“2020-11-11”,“结束”=>“2021-09-17”],//关闭
“wolfy”=>[“日期”=>[“开始”=>“2019-09-04”,“结束”=>“2021-01-01”],//打开
'susi'=>['date'=>['start'=>'2021-05-10','end'=>'2022-01-01']]//关闭
];
$currentDate=日期(“Y-m-d”);
//检查日期为
foreach($dateArray作为$date){
如果($date['date']['start']=$actualDate)){
$on=$date;
$countOn=计数($on);
}
}
echo on(“.$countOn.”)是:;
foreach(按$pers计算){
echo$pers;
};
回声“
”; //检查关闭日期 foreach($dateArray作为$date){
如果($date['date']['start']您可以循环该数组,并创建一个新数组来保持打开或关闭状态。
然后,这只是一个与“开”相交并返回钥匙的问题,以确定谁开了或关了

$on =0;
$off=0;

foreach($dateArray as $name => $values){
    if(time() >= strtotime($values['date']['start'])  && time() < strtotime($values['date']['end'])){
        $result[$name] = "on";
        $on++;
    }else{
        $result[$name] = "off";
        $off++;
    }
}



echo "on (" . $on . ") is: " . implode(", ", array_keys(array_intersect($result, ['on']))) . "<br>\n";
echo "off (" . $off . ") is: " . implode(", ", array_keys(array_intersect($result, ['off']))) . "<br>\n";
echo "hello, Herbert is " . $result['herbert'] . " and alex is ". $result['alex'];
$on=0;
$off=0;
foreach($dateArray作为$name=>$value){
如果(time()>=strottime($value['date']['start'])和&time()\n;
echo“off(“.off.”)是:“.intlode(“,”,array_key(array_intersect($result,['off']))))。”
\n”; echo“你好,赫伯特是“$result['Herbert']”而亚历克斯是“$result['alex']”;

看起来你是在让别人为你编写代码,而不是问一个具体的问题。你没有看到代码吗?@cnizzardini我认为他自己在创建代码方面做了很大的努力。我没有看太多你的代码,但看起来你在覆盖循环中的变量。你有一个未定义的实际日期欢迎到StackOverflow。请按照您创建此帐户时建议的帮助文档中的发布指南,然后…在此处应用。StackOverflow不是设计、编码、研究或教程资源。但是,如果您遵循联机找到的任何资源,尝试诚实的解决方案,并遇到问题,您将有一个这是一个很好的例子。