您可以创建一个循环,去掉不需要的项目,然后构建一个新数组.. 可能是最简单的 ..
<?php
$old_array = array();
$old_array[0] = "Mi 06.01.";
$old_array[1] = "Do 06.01.";
$old_array[2] = "Fr 06.01.";
$old_array[3] = "Mi 06.01.";
$old_array[4] = "Mo 06.01.";
$new_array = array();
foreach ($old_array as $item){
if (strpos($item, 'Mo') !== false || // Checks if $item conains "Mo"
strpos($item, 'Mi') !== false) { // Checks if $item conains "Mi"
// push to new array
array_push($new_array ,$item);
}
}
print_r($new_array);
$new_array 输出:
Array
(
[0] => Mi 06.01.
[1] => Mi 06.01.
[2] => Mo 06.01.
)
这会稍微费点力——但实际上这是完成它的最简单方法。要获得你的“范围”,你可以创建一个带有“开始”和“结束”的函数并以这种方式进行比较,return 你的范围作为字符串或数组等......
<?php
$old_array = array();
$old_array[0]= "Mi 06.01.";
$old_array[1]= "Do 07.01.";
$old_array[2]= "Fr 08.01.";
$old_array[3]= "Mo 11.01.";
$old_array[4]= "Di 12.01.";
$old_array[5]= "Mi 13.01.";
$old_array[6]= "Do 14.01.";
$old_array[7]= "Fr 15.01.";
$old_array[8]= "Mo 18.01.";
$old_array[9]= "Di 19.01.";
$old_array[10]= "Mi 20.01.";
$old_array[11]= "Do 21.01.";
$old_array[12]= "Fr 22.01.";
$old_array[13]= "Mo 25.01.";
$old_array[14]= "Di 26.01.";
$old_array[15]= "Mi 27.01.";
$old_array[16]= "Do 28.01.";
$old_array[17]= "Fr 29.01.";
$start_day = "Mi 06.01.";
$end_day = "Fr 08.01.";
$new_array = makeNewArray($old_array, $start_day, $end_day);
print_r( $new_array );
function makeNewArray($old_array, $start_day, $end_day){
$new_array = array();
foreach ($old_array as $item){
if ($start_day == $item){
$new_array['start'] = $item;
}
if ($end_day == $item){
$new_array['end'] = $item;
}
}
return $new_array;
}
输出:
Array
(
[start] => Mi 06.01.
[end] => Fr 08.01.
)
Start = Mi 06.01.
End = Fr 08.01.