在具有搜索值的元素之后从数组中删除所有元素
Remove all elements from array after element with searched value
$week_link_arr
Array
(
[0] => 1-4_1*Oct-2015
[1] => 5-11_2*Oct-2015
[2] => 12-18_3*Oct-2015
[3] => 19-25_4*Oct-2015
[4] => 26-31_5*Oct-2015
)
$current_week_url
1-4_1*Oct-2015
尝试使用 array_search 获取密钥,如果找到则使用 unset 将其删除:
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
unset($week_link_arr[$key]);
}
输出
Array
(
[1] => 5-11_2*Oct-2015
[2] => 12-18_3*Oct-2015
[3] => 19-25_4*Oct-2015
[4] => 26-31_5*Oct-2015
)
这将删除找到的密钥。相反,如果找到键,我需要删除后续的数组元素。键 1-4_1*Oct-2015
的预期输出
Array
(
[0] => 1-4_1*Oct-2015
)
如果键是5-11_2*Oct-2015
,那么
Array
(
[0] => 1-4_1*Oct-2015
[1] => 5-11_2*Oct-2015
)
在这种情况下,您的键是数组中的索引
所以你可以简单地删除这个键和数组其余部分之间的键
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
array_splice($week_link_arr, $key, count($week_link_arr)-1);
}
你是这个意思吗?
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
$week_link_arr = array_slice($week_link_arr, 0, $key + 1);
}
$week_link_arr
Array
(
[0] => 1-4_1*Oct-2015
[1] => 5-11_2*Oct-2015
[2] => 12-18_3*Oct-2015
[3] => 19-25_4*Oct-2015
[4] => 26-31_5*Oct-2015
)
$current_week_url
1-4_1*Oct-2015
尝试使用 array_search 获取密钥,如果找到则使用 unset 将其删除:
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
unset($week_link_arr[$key]);
}
输出
Array
(
[1] => 5-11_2*Oct-2015
[2] => 12-18_3*Oct-2015
[3] => 19-25_4*Oct-2015
[4] => 26-31_5*Oct-2015
)
这将删除找到的密钥。相反,如果找到键,我需要删除后续的数组元素。键 1-4_1*Oct-2015
Array
(
[0] => 1-4_1*Oct-2015
)
如果键是5-11_2*Oct-2015
,那么
Array
(
[0] => 1-4_1*Oct-2015
[1] => 5-11_2*Oct-2015
)
在这种情况下,您的键是数组中的索引 所以你可以简单地删除这个键和数组其余部分之间的键
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
array_splice($week_link_arr, $key, count($week_link_arr)-1);
}
你是这个意思吗?
if (($key = array_search($current_week_url, $week_link_arr)) !== false) {
$week_link_arr = array_slice($week_link_arr, 0, $key + 1);
}