[0] => LR-153-TKW
[1] => Klaten
[2] => Rectangular
[3] => 12x135x97
我有一个看起来像这样的数组。我想将 12x135x97 完全删除到母阵列,那么我该怎么做呢?
您可以使用unset($arr[3]);
. 它将删除该数组索引。每当你想删除一个数组值时,你可以使用PHP unset() 方法。
正如你被问到你的评论:
basically i just want to remove all index that have "X**X" this pattern digit 'x' digit
这是您可以使用的代码:
$arr = array("LR-153-TKW", "Klaten", "Rectangular", "12x135x97", "xxxx");
$pattern_matched_array = preg_grep("/^[0-9]+x[0-9]+x[0-9]*/", $arr);
if(count($pattern_matched_array) > 0)
{
foreach($pattern_matched_array as $key => $value)
{
unset($arr[$key]);
}
}
print_r($arr);
PHP 有 unset() 函数。您可以使用它来删除变量或数组索引。
unset($your_var[3]);
使用unset,找到它你可以这样做:
for($i = 0; $i < count($array); $i++){
if($i == "12x135x97"){
unset($array[i]);
break;
}
}
除非您知道密钥,否则您可以执行以下操作:
unset($array[3]);
如果您的阵列有数千个项目长,它不是最高效的,但对于这项工作就足够了。
把它变成一种方法,将有助于更好的编码。
function removeItem($item){
for($i = 0; $i < count($array); $i++){
if($i == $item){
unset($array[i]);
break;
}
}
return $array;
}
并称之为:
removeItem("12x135x97");
你有很多选择:如果你知道数组键,那么你可以这样做
unset($arrayName[3]);
或者如果它总是在你的数组的末尾
array_pop($arrayName);
这将从数组中删除最后一个值