首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP:数组将逗号分隔的字符串转换为int

PHP:数组将逗号分隔的字符串转换为int
EN

Stack Overflow用户
提问于 2019-11-29 11:26:46
回答 6查看 138关注 0票数 0

我只是尝试将包含用逗号分隔的数字的数组解析为不带逗号的数字,但仍然是数组形式。但它没有起作用。

我的代码:

代码语言:javascript
运行
复制
$total = $this->input->post('total');
$arrTot = array_filter(array_slice($total, 20));
print_r($arrTot);

数组结果:

代码语言:javascript
运行
复制
Array
(
   [0] => 10,000
   [1] => 100,000
   [2] => 200,000
)

我想要的输出是删除所有数字中的逗号:

代码语言:javascript
运行
复制
Array
(
    [0] => 10000
    [1] => 100000
    [2] => 200000
)

我尝试过这样的东西,但它似乎与我想要的输出甚至不太接近:

代码语言:javascript
运行
复制
$total = $this->input->post('total');
$arrTot = array_filter(array_slice($total, 20));
for ($i=0; $i < count($arrTot); $i++) { 
    $valTot=str_replace( ',', '', $arrTot[$i]);
    print_r($valTot);
}

有没有办法解决这个问题?

谢谢。

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2019-11-29 11:37:00

您可以使用array_walk处理数组中的每个值:

代码语言:javascript
运行
复制
$arrTot = array('10,000', '100,000', '200,000');
array_walk($arrTot, function (&$v) {
    $v = str_replace(',', '', $v);
});
print_r($arrTot);

输出:

代码语言:javascript
运行
复制
Array
(
    [0] => 10000
    [1] => 100000
    [2] => 200000
)

Demo on 3v4l.org

票数 2
EN

Stack Overflow用户

发布于 2019-11-29 11:36:46

您可以为当前变量分配新的值。

代码语言:javascript
运行
复制
$arrTot = array_filter(array_slice($total, 20));
for ($i=0; $i < count($arrTot); $i++) { 
    $arrTot[$i]=str_replace( ',', '', $arrTot[$i]);
}
print_r($arrTot);
票数 1
EN

Stack Overflow用户

发布于 2019-11-29 11:38:50

如果您想要所需的输出,则需要替换不带逗号的主数组中的元素。

代码语言:javascript
运行
复制
$total = $this->input->post('total');
$arrTot = array_filter(array_slice($total, 20));

foreach ($arrTot as $key => $aTot) {
    $arrTot[$key] = str_replace(',','',$arrTot[$i);
}
var_dump($arrTot);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59098422

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档