好的,所以我有一個看起來像這樣的陣列,
Array
(
[0] => Array
(
[0] => order_date.Year
[1] => =
[2] => 2024
),
[1] => Array
(
[0] => order_date.Quarter
[1] => =
[2] => 1
)
)
我想要做的是,在這個多維陣列的任何元素中,我想替換任何.帶有洗掉所有內容的字串.
所以新陣列應該是這樣的,
Array
(
[0] => Array
(
[0] => order_date
[1] => =
[2] => 2024
),
[1] => Array
(
[0] => order_date
[1] => =
[2] => 1
)
)
我試過這樣做,
foreach ($filter as $key => $value) {
if(is_array($value)) {
$variable = substr($value[0], 0, strpos($value[0], "."));
$value[0] = $variable;
}
}
print_r($filter);
我得到$value[0]order_date 但不知道如何將它分配給$filter陣列而不影響陣列中的其他值;
uj5u.com熱心網友回復:
該$value變數未與 foreach 回圈中的原始陣列鏈接。您可以使用與號“&”來參考原始陣列
foreach ($filter as $key => &$value) { ... }
或者您可以使用舊式密鑰嵌套
$filter[$key][0] = $variable;
請看這里https://stackoverflow.com/a/10121508/9429832
uj5u.com熱心網友回復:
這將在 . 在任何多維陣列的每個元素中。
// $in is the source multidimensional array
array_walk_recursive ($in, function(&$item){
if (!is_array($item)) {
$item = preg_replace("/\.. $/", "", $item);
}
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/376773.html
上一篇:如何創建動態陣列過濾器運算式?
