POST TIME:2017-11-13 00:35
if
(
is_array
(
$ids
))
{
foreach
(
$ids
as
$mid
)
{
$mid
= trim(
$mid
);
if
(
$mid
==
""
)
continue
;
if
(!isset(
$arcids
[
$mid
]))
{
if
(
$okids
==
""
)
{
$okids
.=
$mid
;
}
else
{
$okids
.=
","
.
$mid
;
}
$arcids
[
$mid
] = 1;
}
}
}
其中foreach循環(huán)中,有個(gè)isset的判斷,就是在此過濾了一些重復(fù)ID;
不知道DEDE $arcids這個(gè)變量是如何設(shè)置的,經(jīng)過foreach循環(huán)之后既然會(huì)賦予所有節(jié)點(diǎn)的ID均入到數(shù)組中。
為此,我的解決方法是這樣的:
首先將$ids這個(gè)數(shù)組變量進(jìn)行去重復(fù)處理:
$ids
=
array_unique
(
$ids
);
之后將isset改用is_array判斷是否是數(shù)組
完整的代碼如下:
$ids
=
array_unique
(
$ids
);
if
(
is_array
(
$ids
))
{
foreach
(
$ids
as
$mid
)
{
$mid
= trim(
$mid
);
if
(
$mid
==
""
)
continue
;
if
(!
is_array
(
$arcids
[
$mid
]))
{
if
(
$okids
==
""
)
{
$okids
.=
$mid
;
}
else
{
$okids
.=
","
.
$mid
;
}
$arcids
[
$mid
] = 1;
}
}
}
不知道如此更改是否會(huì)有其他“副作用”!還望大家多多指教!