Heim  >  Artikel  >  Backend-Entwicklung  >  php取数目字

php取数目字

WBOY
WBOYOriginal
2016-06-13 11:59:201065Durchsuche

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年';
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn