【发布时间】:2017-07-29 11:15:52
【问题描述】:
我在 PHP 数组中有一些数字,类似于
$num = array(+0100,-0200, +0000);
我想删除最后两位数字 (00)。有人可以帮忙吗?
【问题讨论】:
-
分享您的确切代码
-
没有数字 0000 它只有 0 ,其他的也一样
我在 PHP 数组中有一些数字,类似于
$num = array(+0100,-0200, +0000);
我想删除最后两位数字 (00)。有人可以帮忙吗?
【问题讨论】:
试试这个
$num = array("+0100","-0200", "+0000");
foreach($num as $key=>$val)
{
$num[$key] = substr($val, 0, -2);
}
print_r($num);
【讨论】:
您不需要 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"
}
【讨论】:
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 的正确执行答案。