在PHP中切片数组

时间:2013-01-24 04:23:04

标签: php

我有以下声明:

print_r($dates);

给出输出:

Array ( [0] => Fri, Jan 25 [1] => Sat, Jan 26 [2] => Sun, Jan 27)

我想分开打印日期。我知道爆炸的方法,但是有没有其他方法可以在每个日期分别列出我的日期(星期五,1月25日)。

6 个答案:

答案 0 :(得分:0)

为什么不起作用?他们很棒=)

foreach($dates as $date){
    $arr_dates = explode(",", $date);
    echo 'day is '.$arr_dates[0].' and date is '.$arr_dates[1]."\r\n";
}

答案 1 :(得分:0)

如果您不想使用功能,那么只需echo

echo $dates[0];
echo $dates[1];
echo $dates[2];

OR

使用foreach loop

foreach($dates as $d)
   echo "Date : " . $d . "<br>";

答案 2 :(得分:0)

您可以使用函数preg_match()

$pattern = '/(\w+), (\w+) (\d+)/i';
foreach($dates as $dt){ 
    if(preg_match($pattern, $dt, $matches)){
        echo 'DoW : '.$matches[1].'<br>';
        echo 'Mon : '.$matches[2].'<br>';
        echo 'Day : '.$matches[3].'<br>';
        echo '<hr>';
    }
}   

答案 3 :(得分:0)

foreach($dates as $val){
   echo $val;
   echo "<br>";
}

答案 4 :(得分:0)

您可以使用strtotime来解析日期,以便获得有关每个日期的有意义信息。然后,您可以使用date函数以您喜欢的任何格式显示(或getdate以获取有关日,月,年等的详细信息):

$dates = Array ("Fri, Jan 25", "Sat, Jan 26", "Sun, Jan 27");
foreach($dates as $datestr) {
    $date = strtotime($datestr);
    echo date('l jS \of F Y h:i:s A', $date)."\n";
}

输出:

Friday 25th of January 2013 12:00:00 AM
Saturday 26th of January 2013 12:00:00 AM
Sunday 27th of January 2013 12:00:00 AM

演示:http://ideone.com/6xeCxt

PHP中内置了很多date/time manipulation functions可能会有所帮助。

答案 5 :(得分:0)

<?php
 $array = array("Fri, Jan 25", "Sat, Jan 26", "Sun, Jan 27");
 foreach($array as $date) {
   $dateStr = substr($date, 4); 
  echo $dateStr;
 }
?>