Home >Backend Development >PHP Tutorial >PHP按照如下条件截取数字再比较

PHP按照如下条件截取数字再比较

WBOY
WBOYOriginal
2016-06-23 13:37:43995browse

字符串:
TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56

要求:
1、截取每一个TKPC和TKMR后的连续5位数。(例中的截取出来就应该是TKPC有11090,12098,TKMR有12099,11059)
2、将截取后的数字按照如下条件对比,为真的echo yes。
      2.1   TKPC的两组数字,如果有一组小于等于11069的话,ECHO  TKPC。
      2.1   TKMR的两组数字,如果有一组小于等于10999的话,ECHO TKMR。


非常感谢!
请给详细完整的代码。


回复讨论(解决方案)

<?php$str = 'TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56';function fn($str) {	preg_match_all('/(TKPC|TKMR)(\d{5})/U', $str, $m);	$res = array(		'TKPC' => 0,		'TKMR' => 0,	);	foreach($m[1] as $k => $v){		$num = $m[2][$k];		if($v == 'TKPC' && $num <= 11069 || $v == 'TKMR' && $num <= 10999){			$res[$v]++;		}	}	if($res['TKPC']){		echo 'TKPC';	}	if($res['TKMR']){		echo 'TKMR';	}}fn($str);

运行了没显示?。。。

字符串:
TKPC11090987TKPC12098M9YTKMR120990U9TKMR11059E56

要求:
1、截取每一个TKPC和TKMR后的连续5位数。(例中的截取出来就应该是TKPC有11090,12098,TKMR有12099,11059)
2、将截取后的数字按照如下条件对比,为真的echo yes。
      2.1   TKPC的两组数字,如果有一组小于等于11069的话,ECHO  TKPC。
      2.1   TKMR的两组数字,如果有一组小于等于10999的话,ECHO TKMR。


非常感谢!
请给详细完整的代码。



运行了没有显示呢。。

我是瓜的,没有命中,但是没显示咯。谢谢了

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