【问题标题】:How to remove last 2 digit of number in php?如何在php中删除最后2位数字?
【发布时间】:2017-07-29 11:15:52
【问题描述】:

我在 PHP 数组中有一些数字,类似于

$num = array(+0100,-0200, +0000);

我想删除最后两位数字 (00)。有人可以帮忙吗?

【问题讨论】:

标签: php arrays numbers digit


【解决方案1】:

试试这个

$num = array("+0100","-0200", "+0000");
foreach($num as $key=>$val)
{
  $num[$key] = substr($val, 0, -2);
}
print_r($num);

演示https://eval.in/839153

【讨论】:

    【解决方案2】:

    您不需要 for 或 foreach。

    $arr =  array("+0100","-0200", "+0000");
    
    $arr = array_map( function($val) { return substr($val, 0, -2); }, $arr);
    
    var_dump($arr);
    

    输出:

    array(3) {
          [0]=>
          string(3) "+01"
          [1]=>
          string(3) "-02"
          [2]=>
          string(3) "+00"
    }
    

    https://3v4l.org/FgWuP

    【讨论】:

      【解决方案3】:
       foreach($num as $key=>$value){   
               $num[$key]= substr($value,0,strlen($value)-2);
           }
      
          foreach($num as $key=>$value){   
              $num[$key]= $value;
              echo 'the'.$key.'value ='.$num[$key] ;
           }
      

      substr() 函数返回字符串的一部分。

      注意:如果start参数为负数且length小于等于start,则length为0。

      语法 substr(string,start,length) 祝你好运

      祝你好运!

      【讨论】:

      • 这个答案不是最佳实践。 strlen() 是不必要的电话。两个 foreach 循环是草率/不必要的。请参阅 Andreas 或 Satish 的正确执行答案。
      猜你喜欢
      • 2017-06-01
      • 1970-01-01
      • 2022-10-01
      • 1970-01-01
      • 2019-04-01
      • 1970-01-01
      • 2017-05-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多