[英]How to unset value array in PHP
This is my array: 这是我的数组:
array(
"tracker"=> array(
0=> array(
0=> "[" ,
1=> "asiangames" ,
2=> "," ,
3=> "asiangames2018" ,
4=> "," ,
5=> "asian" ,
6=> "]"
),
1=> array(
0=> "[" ,
1=> "2019gantipresiden" ,
2=> "]"
)
)
)
How to unset value, if not word in PHP for example in this array unset value [
and ]
and ,
, ?
如何取消设置的值,如果不字PHP例如,在这个数组未设置值
[
和]
和,
, ?
? ?
PHP has a function that does this task for you in one eloquent call for a clean, direct snippet. PHP具有一项功能,可以通过一个雄辩的调用来直接为您提供干净,直接的代码片段,从而为您完成此任务。
Iterate each subarray in tracker
and apply the "blacklist" of values as the 2nd parameter in array_diff()
. 迭代
tracker
每个子数组,并将值的“黑名单”用作array_diff()
的第二个参数。 The &
before $tracker
in the foreach()
declaration makes the variable "modifiable by reference" -- effectively, this means that new data will be applied to the original array's $tracker
and not a copy of the original input array. foreach()
声明中的&
之前的$tracker
使变量“可通过引用修改”-有效地,这意味着新数据将应用于原始数组的$tracker
而不是原始输入数组的副本。
$array = [
"tracker" => [
["[", "asiangames", ",", "asiangames2018", ",", "asian", "]"],
["[", "2019gantipresiden", "]"]
]
];
foreach ($array["tracker"] as &$tracker) {
$tracker = array_diff($tracker, ["[", ",", "]"]);
}
var_export($array);
Output: 输出:
array (
'tracker' =>
array (
0 =>
array (
1 => 'asiangames',
3 => 'asiangames2018',
5 => 'asian',
),
1 =>
array (
1 => '2019gantipresiden',
),
),
)
You need to use foreach()
like below:- 您需要使用如下所示的
foreach()
:
$remove_values = array('[',']',',');
foreach($your_array['tracker'] as &$value){
foreach($value as $key=>$val){
if(in_array($val,$remove_values)){
unset($value[$key]);
}
}
}
print_r($your_array);
Output:- https://3v4l.org/1FaO1 输出: -https : //3v4l.org/1FaO1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.