Home >Backend Development >PHP Tutorial >PHP CodeIgniter 截取数据

PHP CodeIgniter 截取数据

WBOY
WBOYOriginal
2016-06-23 14:39:36809browse




15018903588-006


在中间有一横杠,怎么根据中间的横杠前面数据截出,然后在根据横杠把后面的数据截出


求大虾代码贴出


回复讨论(解决方案)

$str = '15018903588-006';$last = substr($str,0,strrpos($str,'-'));$next = substr(strstr($str,'-'),1);echo $last,PHP_EOL;echo $next

$str = '15018903588-006';$last = substr($str,0,strrpos($str,'-'));$next = substr(strstr($str,'-'),1);echo $last,PHP_EOL;echo $next


下面是我显示出来的数据,请问可以下面那样写吗?
  
上面得出来的结果是:15018903588

---------------------------------------------------------------
  
得出:006

我理解的对吗?




$str = '15018903588-006';$last = substr($str,0,strrpos($str,'-'));$next = substr(strstr($str,'-'),1);echo $last,PHP_EOL;echo $next


下面是我显示出来的数据,请问可以下面那样写吗?
  
上面得出来的结果是:15018903588

---------------------------------------------------------------
  
得出:006

我理解的对吗?




是的

 
 foreach ( $info as $key => $value)
     {
  ?> 



   



         
   



奇怪 值显示不出来。
------------------------------------------------------
下面这样是可以显示出来的
 
 foreach ( $info as $key => $value)
     {
  ?> 


   



         
   




$str = '15018903588-006';$last = substr($str,0,strrpos($str,'-'));$next = substr(strstr($str,'-'),1);echo $last,PHP_EOL;echo $next


下面是我显示出来的数据,请问可以下面那样写吗?
  
上面得出来的结果是:15018903588

---------------------------------------------------------------
  
得出:006

我理解的对吗?




是的








-------------------------------------------
对了,有的号码是没有代工号的,怎么验证 比如没有带工号的




$str = '15018903588-006';$last = substr($str,0,strrpos($str,'-'));$next = substr(strstr($str,'-'),1);echo $last,PHP_EOL;echo $next


下面是我显示出来的数据,请问可以下面那样写吗?
  
上面得出来的结果是:15018903588

---------------------------------------------------------------
  
得出:006

我理解的对吗?




是的








-------------------------------------------
对了,有的号码是没有代工号的,怎么验证 比如没有带工号的
判断工号是否存在,存在就截取,不存在就跳过

 
 foreach ( $info as $key => $value)
     {
  ?> 



   



         
   



奇怪 值显示不出来。
------------------------------------------------------
下面这样是可以显示出来的
 
 foreach ( $info as $key => $value)
     {
  ?> 


   



         
   


确定有值存在,这样是没有问题
$value['homa'] = '15018903588-006';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));
?>


 
 foreach ( $info as $key => $value)
     {
  ?> 



   



         
   



奇怪 值显示不出来。
------------------------------------------------------
下面这样是可以显示出来的
 
 foreach ( $info as $key => $value)
     {
  ?> 


   



         
   


确定有值存在,这样是没有问题
$value['homa'] = '15018903588-006';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));
?>

--------------------------------------------------
有的不过有些数据是没有带工号的比如:


 
 foreach ( $info as $key => $value)
     {
  ?> 



   



         
   



奇怪 值显示不出来。
------------------------------------------------------
下面这样是可以显示出来的
 
 foreach ( $info as $key => $value)
     {
  ?> 


   



         
   


确定有值存在,这样是没有问题
$value['homa'] = '15018903588-006';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));
?>
------------------------------------------------------------
$value['homa'] = '15018903588';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));

$value['homa'] = '057120826666';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));


 
 foreach ( $info as $key => $value)
     {
  ?> 



   



         
   



奇怪 值显示不出来。
------------------------------------------------------
下面这样是可以显示出来的
 
 foreach ( $info as $key => $value)
     {
  ?> 


   



         
   


确定有值存在,这样是没有问题
$value['homa'] = '15018903588-006';
echo  substr($value['homa'],0,strrpos($value['homa'],'-'));
?>
-------------------------------------------
数据值:
15018903588-006
057188888881-007
05718888888-007
15018903588

以上是值会显示其中一种的数据

我要实现的效果是:
把横杠前后数据都截取出来,没有横杠的就直接显示

判断工号是否有“-”
if (strpos($value['homa'],'-')){
    $last = substr($value['homa'],0,strrpos($value['homa'],'-'));
    $next = substr(strstr($value['homa'],'-'),1);
}else{
    $value['homa'];
}

嗯嗯  谢谢

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