Home  >  Article  >  Backend Development  >  php取数目字

php取数目字

WBOY
WBOYOriginal
2016-06-13 11:59:201044browse

php取数字

本帖最后由 jaredlong 于 2014-05-31 20:33:46 编辑 通过row获取到数据库中一字段的值$row['tkpc']
tkpc的值有TKPC10069999(从左到右意思是10年6月份),TKPC1010093A(10年10月份),TKPC12030AE3(12年3月份)
如何比较这些值有没有超过5年。
------解决方案--------------------
思路:根据字符串截取年月 例如:TKPC10069999 截取得到1006再转化为时间为$newtime,
再与当前时间加上5年比较,$addfiveyear = strtotime("+5 year",time())

具体自己可以去试着实现

if ($newtime > $addfiveyear){
    echo "超过5年";
}
------解决方案--------------------
字符串比大小,印象中应该是按字节依次比较ASCII值
也就是说,TKPC10069999这种字符串不需要额外处理可以直接比较
马上过节了,按2014-6-1算,用date('Ym')生成1406,减5年前后拼接成TKPC09060000,直接跟它比大小
------解决方案--------------------
引用:
$x="TKMB15030WE5";
  $year = substr($x,4,2);
  $month = substr($x,6,2);
  $tkpc = strtotime('$year-$month');
$addfiveyear = strtotime("+5 year",time());
 echo "$tkpc";
 echo "和" ;
 echo "$addfiveyear";

尝试失败了。$tkpc输出不了


<br /><?php<br /><br />$arr = array('TKPC10069999', 'TKPC1010093A', 'TKPC12030AE3');<br />foreach($arr as $val){<br />    check5years($val);<br />}<br /><br />echo '<meta http-equiv="content-type" content="text/html;charset=utf-8">';<br /><br />function check5years($str){<br />    $year = substr($str, 4, 2);<br />    $month = substr($str, 6, 2);<br />    $tkpc = strtotime('20'.$year.'-'.$month.'-01');<br />    echo $str.'<br>';<br />    echo 'tkpc:'.$tkpc.'<br>';<br />    if(strtotime("+5 year", $tkpc)<time()){<br />        echo '超过5年';<br />    }else{<br />        echo '未超过5年';<br />    }<br />    echo '<br><br>';<br />}<br /><br />?><br />

------解决方案--------------------
echo $row['tkpc'], 4, 2) * 12 + $row['tkpc'], 6, 2) > (date('y') - 5) * 12 + date('m') ? '未满5年' : '满5年';
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn