[英]PHP: Array Convert comma separated string to int
我只是嘗試將包含用逗號分隔的數字的數組解析為不帶逗號的數字,但仍為數組形式。 但它沒有用。
我的代碼:
$total = $this->input->post('total');
$arrTot = array_filter(array_slice($total, 20));
print_r($arrTot);
數組結果:
Array
(
[0] => 10,000
[1] => 100,000
[2] => 200,000
)
我想要的輸出是擦除所有數字中的逗號:
Array
(
[0] => 10000
[1] => 100000
[2] => 200000
)
我已經嘗試過這樣的事情,但似乎與我想要的輸出還差得遠:
$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);
}
有沒有辦法解決這個問題?
謝謝。
您可以使用array_walk
處理數組中的每個值:
$arrTot = array('10,000', '100,000', '200,000');
array_walk($arrTot, function (&$v) {
$v = str_replace(',', '', $v);
});
print_r($arrTot);
輸出:
Array
(
[0] => 10000
[1] => 100000
[2] => 200000
)
您可能會為當前變量分配新值。
$arrTot = array_filter(array_slice($total, 20));
for ($i=0; $i < count($arrTot); $i++) {
$arrTot[$i]=str_replace( ',', '', $arrTot[$i]);
}
print_r($arrTot);
如果您想要所需的輸出,則需要不帶逗號替換主數組中的元素。
$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);
嘗試這個-
echo "<pre>";
$arr = array('10,000','100,000','200,000');
print_r($arr);
//result
Array
(
[0] => 10,000
[1] => 100,000
[2] => 200,000
)
foreach ($arr as $key => $value) {
$new[] = str_replace(',','',$value);
}
print_r($new);
Array
(
[0] => 10000
[1] => 100000
[2] => 200000
)
嘗試這個 ,
$arr = ['10,000','100,000','200,000'];
foreach($arr as $key=>$val){
$arr[$key] = (int)str_replace(',','',$val);
}
var_dump($arr);
您可以簡單地使用str_replace
來實現所需的結果
$arrTot = array('10,000', '100,000', '200,000');
foreach($arrTot as $key => $value){
$arrTot[$key] = str_replace(",","",$value);
}
print_r($arrTot);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.