$numbers = array("18339993993","18303839303");
foreach($numbers as $number) {
$number = explode(",", $number);
for($i = 0; $i <= count($number); $i++) {
$number = substr($number,1, 10);
echo $number;
}
请我想删除数组中每个元素中的第一个数字,并将其替换为数组中所有元素的"999"。
I want my output to be like this for each element in the array:
$output[0] = "9998339993993"
$output[1] = "9998303839303"
这应该适合您:
(在这里,我用array_map()
遍历数组的每个元素。然后我返回每个元素,开头带有 999
加上偏移量为 1 的原始值,我得到 substr()
)
<?php
$numbers = array("18339993993","18303839303");
$numbers = array_map(function($v){
return "999" . substr($v, 1);
}, $numbers);
print_r($numbers);
?>
输出:
Array ( [0] => 9998339993993 [1] => 9998303839303 )
更接近问题中的代码:
<?php
$numbers = array("18339993993","18303839303");
$numbers_after = array();
foreach ($numbers as $number){
$number = "999" . substr($number, 1);
array_push($numbers_after, $number);
}
print_r ($numbers_after);
?>
由于没有正则表达式解决方案:
$numbers = preg_replace('/^'d/', '999', $numbers);
就这么简单。