Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.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 - Fatal编程技术网

如何从PHP中现有的日期数组创建新的日期数组?

如何从PHP中现有的日期数组创建新的日期数组?,php,Php,我有两个日期数组。我需要最有效的方法来构建第三个日期数组,该数组只包含两个日期数组中相同的日期 例如: List of Dates #1: 2017-01-01 2017-01-02 2017-01-03 2017-02-01 2017-02-02 2017-09-09 List of Dates #2: 2017-01-01 2017-02-01 2017-03-01 2017-04-01 So array 3 should be: 2017-01-01 2017-02-01 您正在寻找

我有两个日期数组。我需要最有效的方法来构建第三个日期数组,该数组只包含两个日期数组中相同的日期

例如:

List of Dates #1:
2017-01-01
2017-01-02
2017-01-03
2017-02-01
2017-02-02
2017-09-09

List of Dates #2:
2017-01-01
2017-02-01
2017-03-01
2017-04-01

So array 3 should be:
2017-01-01
2017-02-01
您正在寻找:

工作演示

注意

array\u intersect
返回一个数组,其中包含
$array1
其值存在于所有参数中。所以如果你的
$array1
具有重复数据,则结果数组也具有重复数据 重复值


为了克服这种情况,我添加了。

也许数组_intersect()

Array
(
    [a] => green
    [0] => red
)
结果

function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}

$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");

$result=array_uintersect($a1,$a2,$a3,"myfunction");
print_r($result);
试试这个

Array ( [a] => red [0] => yellow )
结果:


可能有帮助:有什么方法可以防止重复输入?当我尝试这个的时候,这是我的致命一击。即使有多个重叠的日期,输出也不能包含重复的条目。很高兴为您提供帮助:)您是否还知道,如果此数组中的第一个、第二个等值标记为与您的输出类似,而它们可能不是[0]、[1]、[2],等等?例如,for循环将无法使用诸如$i之类的增量在记录中循环。。。对于($i=0;$i)
Array
(
    [a] => green
    [0] => red
)
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}

$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");

$result=array_uintersect($a1,$a2,$a3,"myfunction");
print_r($result);
Array ( [a] => red [0] => yellow )