转换中文日期的PHP程序

本程序将中文日期输出为2001-12-23,并很好解决了“十”的问题,如“十一”和“二十一”中“十”的处理!稍加修改可改为函数。
<?
$str="二零○一年十二月二十三日";
echo $str."<p>";
$flag=0;
$cn=array("一","二","三","四","五","六","七","八","九","十","零","○");
$num=array("1","2","3","4","5","6","7","8","9","","0","0");
$len=strlen($str);
for ($i=0;$i<$len;$i+=2)
{
   $array_str[$i]=substr($str,$i,2);
   $cout=0;
   while($cout<count($cn))
   {
     if ($array_str[$i]==$cn[$cout])
     {
       if ($flag==1)
         echo "-";
       if (($array_str[$i]=="十") and ($flag==1))
       {
         $temp[$cout]="1";
         echo $temp[$cout];
         $flag=2;break;
       }
       $temp[$cout]=$num[$cout];
       echo $temp[$cout];
       $flag=2;
       break;
     }
     else
     {
       if (count($cn)==$cout+1)
          $flag=1;
     }
     $cout++;
   }
}
?>

(0)

相关推荐

  • PHP中UNIX时间戳和日期间的转换与计算实例

    UNIX时间戳是保存日期和时间的一种紧凑简洁的方法,是大多数UNIX系统中保存当前日期和时间的一种方法,也是在大多数计算机语言中表示日期和时间的一种标准格式.以32位整数表示格林威治标准时间,例如,使用证书11230499325表示当前时间的时间戳.UNIX时间戳是从1970年1月1日零点(UTC/GMT的午夜)开始起到当前时间所经过的秒数.1970年1月1日零点作为所有日期计算的基础,这个日期通常成为UNIX纪元. 因为UNIX时间戳是一个32位的数字格式,所以特别适用于计算机处理,例如计算两

  • PHP时间戳与日期之间转换的实例介绍

    1.php中时间转换函数 strtotime("today") date("Y-m-d H:i",$unixtime) 2.php中获得今天零点的时间戳 要获得零点的unix时间戳,可以使用$todaytime=strtotime("today"), 然后再使用date("Y-m-d H:i",$todaytime)转换为日期. 3.php中时间戳转换为日期,并按照时间显示不同的内容,如刚刚,分钟前,小时前,今天,昨天等 /*

  • php将日期格式转换成xx天前的格式

    本文实例讲述了php将日期格式转换成xx天前格式的方法.分享给大家供大家参考.具体如下: 这段代码可以把时间格式化成3天前,5秒前,2年前的形式 // convert a date into a string that tells how long ago // that date was.... eg: 2 days ago, 3 minutes ago. function ago($d) { $c = getdate(); $p = array('year', 'mon', 'mday',

  • 解析php时间戳与日期的转换

    大家也许对PHP时间戳已经有所了解,那么我们如何应用它来获取具体的日期呢?我们今天来为大家介绍一下PHP时间戳获取当前时期的具体方式. 实现功能:获取某个日期的时间戳,或获取某个时间的PHP时间戳. strtotime能将任何英文文本的日期时间描述解析为Unix时间戳,我们结合mktime()或date()格式化日期时间获取指定的时间戳,实现所需要的日期时间. strtotime 将任何英文文本的日期时间描述解析为Unix时间戳[将系统时间转化成unix时间戳] 一,获取指定日期的unix时间戳

  • php日期转时间戳,指定日期转换成时间戳

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么自如,所以有的时候需要互相转换,下面给出互相转换的几种转换方式. 一.在MySQL中完成 这种方式在MySQL查询语句中转换,优点是不占用PHP解析器的解析时间,速度快,缺点是只能用在数据库查询中,有局限性. 1. UNIX时间戳转换为日期用函数: FROM_UNIXTIME() 一般形式:selec

  • PHP+Mysql日期时间如何转换(UNIX时间戳和格式化日期)

    写过PHP+MySQL的程序员都知道有时间差,UNIX时间戳和格式化日期是我们常打交道的两个时间表示形式,Unix时间戳存储.处理方便,但是不直观,格式化日期直观,但是处理起来不如Unix时间戳那么自如,所以有的时候需要互相转换,下面给出互相转换的几种转换方式. 一.在MySQL中完成 这种方式在MySQL查询语句中转换,优点是不占用PHP解析器的解析时间,速度快,缺点是只能用在数据库查询中,有局限性. 1. UNIX时间戳转换为日期用函数: FROM_UNIXTIME() 一般形式:selec

  • php计算到指定日期还有多少天的方法

    本文实例讲述了php计算到指定日期还有多少天的方法.分享给大家供大家参考.具体如下: function countdays($d) { $olddate = substr($d, 4); $newdate = date(Y) ."".$olddate; $nextyear = date(Y)+1 ."".$olddate; if($newdate > date("Y-m-d")) { $start_ts = strtotime($newda

  • 转换中文日期的PHP程序

    本程序将中文日期输出为2001-12-23,并很好解决了"十"的问题,如"十一"和"二十一"中"十"的处理!稍加修改可改为函数. <? $str="二零○一年十二月二十三日"; echo $str."<p>"; $flag=0; $cn=array("一","二","三","四","

  • C#基于纯数学方法递归实现货币数字转换中文功能详解

    本文实例讲述了C#基于纯数学方法递归实现货币数字转换中文功能.分享给大家供大家参考,具体如下: 最近由于项目的原因,需要写一个货币数字转换中文的算法,先在网了找了一下,结果发现无一列外都是用(Replace)替换的方式来实现的,所以想写个另外的算法:因为本人是学数学出身的,所以用纯数学的方法实现. 注意:本文中的算法支持小于1023 (也就是9999亿兆)货币数字转化. 货币中文说明: 在说明代码之前,首先让我们回顾一下货币的读法. 10020002.23  读为 壹仟零贰万零贰元贰角叁分 10

  • C++时间戳转换成日期时间的步骤和示例代码

    因工作需要,经常跟时间戳打交道,但是因为它仅仅是一个数字,我们很难直接看出它有什么意义,或两个时间戳之间究竟差了多长的间隔.于是从MSDN for Visual Studio6上找到了时间戳转换成日期时间的算法.本文除介绍这一算法外,还提供一个示例代码. 1.将时间戳转换成一串32比特的二进制数.有些数字转换之后不够32位,则在前面补充0.这可通过windows自带的计算器完成.比如481522543转换成 0001 1100 1011 0011 0111 0011 0110 1111 2.根据

  • python实现将中文日期转换为数字日期

    1.说明 这篇文章是帮一个群友解答的问题. 他有一个需求,就是对于日期的录入都是中文形式的,需要转换为数字形式的.由于python库中没有函数直接进行转换,因此我写了本篇文章. 2.测试源数据如下 3.代码如下 df = pd.read_excel(r"C:\Users\黄伟\Desktop\chinese_english.xlsx") display(df) def func(x): year = x.split("年")[0] month = x.split(&

  • js中的时间转换—毫秒转换成日期时间的示例代码

    js毫秒时间转换成日期时间 复制代码 代码如下: var oldTime = (new Date("2011/11/11 20:10:10")).getTime(); //得到毫秒数 大多数是用毫秒数除以365*24*60*60&1000,这么转回去,这种方法转换太过复杂,年月日,时分秒都要不同的方法获取,而且有的年份有366天,有的365天,这么算起来就太过复杂了. 后面自己试了一个方法,居然成功了 复制代码 代码如下: var oldTime = (new Date(&qu

  • 转换中文为unicode 转换unicode到正常文本

    复制代码 代码如下: '//转换中文为unicode function URLEncoding(vstrIn) dim i     dim strReturn,ThisChr,innerCode,Hight8,Low8 strReturn = ""     for i = 1 to Len(vstrIn)         ThisChr = Mid(vStrIn,i,1)         If Abs(Asc(ThisChr)) < &HFF then          

  • javascript显示中文日期的方法

    本文实例讲述了javascript显示中文日期的方法.分享给大家供大家参考.具体实现方法如下: 将以下代码加入HEML的<body></body>之间 <script LANGUAGE="JavaScript"> function number(index1){ var numberstring="一二三四五六七八九十"; if(index1 ==0) {document.write("十")} if(inde

  • C#实现将字符串转换成日期格式的方法

    本文实例讲述了C#实现将字符串转换成日期格式的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: string s = "20120114161145"; Response.Write(DateTime.ParseExact(s, "yyyyMMddHHmmss", new System.Globalization.CultureInfo("zh-CN", true)).ToString()); return; 希望本文所述对大

  • Js中将Long转换成日期格式的实现方法

    主要用于将数据库中日期用long表示,转换成YYYY-MM-DD格式或YYYY-MM-DD HH:mm:ss格式 若显示为YYYY-MM-DD HH:mm:ss格式,调用如下方法: datetimeFormat(longTypeDate); 若显示为YYYY-MM-DD格式,调用如下方法: dateFormat(longTypeDate); Js中具体方法如下: /* * 时间格式化工具 * 把Long类型的1527672756454日期还原yyyy-MM-dd 00:00:00格式日期 */

  • python自动提取文本中的时间(包含中文日期)

    有时在处理不规则数据时需要提取文本包含的时间日期. dateutil.parser模块可以统一日期字符串格式. datefinder模块可以在字符串中提取日期. datefinder模块实现也是用正则,功能很全 但是对中文不友好. 但是这两个模块都不能支持中文及一些特殊的情况:所以我用正则写了段代码可进行中文日期及一些特殊的时间识别 例如: '2012年12月12日','3小时前','在2012/12/13哈哈','时间2012-12-11 12:22:30','日期2012-13-11','测

随机推荐