将php日期输出转换为word?

时间:2014-04-12 15:16:52

标签: php

PHP中是否有内置函数可以将日期转换为字符串?

我已经尝试了

date("M jS, Y", strtotime("2014-04-12"));

但我们的客户不希望这个输出。

假设我有一个持有日期的php变量

$dateToday = '2014-04-12'

我希望以这种格式输出:“四月二千四十四”或者它可能是“四月四千二十四”

是否有任何PHP内置函数可以通过它来执行此操作? 如果没有,请建议我如何实现这一目标。

4 个答案:

答案 0 :(得分:0)

date()函数没有这样的参数,手动转换它并不困难。

答案 1 :(得分:0)

我假设你在变量中有日,月和年。

  • 创建一个名称为1-31,
  • 的数组
  • 创建一个名称为1到12之间的数组,
  • 多年来创建一个数字,该数组包含1到99之间的数字。

用空格连接这三个东西,你有输出。还有一些图书馆可以在互联网上为您完成此操作。

答案 2 :(得分:0)

您可以单独减去月份,年份和日期,并为每个月份使用一个开关案例。

这就是我做的。

$dateToday = '2014-04-12';
$year = substr($dateToday, 0, 4);
$month = substr($dateToday, 5, 2);
$date = substr($dateToday, 8, 2);
echo $dateToday.'<br/>';
switch($year) {
    case 2014 : $year_word = 'Two Thousand And Fourteen';
    //You can add as many years as you want
}
switch($month) {
    case 04 : $month_word = 'April';
    //You can add cases from 1 to 12
}
switch($date) {
    case 12 : $date_word = 'Twelve';
    //You can add cases from 0 to 31
}
$dateToday_new = $date_word.' '.$month_word.' '.$year_word;
echo $dateToday_new;

我希望这会对你有所帮助。 :)

答案 3 :(得分:0)

使用pear package Numbers_Words

$dateToday = '2014-04-12';
$date = date('d-F-Y', strtotime($dateToday));
list($day, $month, $year) = explode('-', $date);

$NumbersWords = new Numbers_Words();
$dateWord = implode(' ', array(
    $NumbersWords->toWords($day),
    $month,
    $NumbersWords->toWords($year)
));

echo ucwords($dateWord);