我面临的问题是当我在另一个中使用一个 foreach 并且第一个 foreach 的数组有超过 1 个条目时。我想要做的是从数组2中排除数组1的所有条目。我几乎在所有相关的帖子上,无法自己解决,如果可能的话我需要一点帮助。对不起,我的英语不好。
例子:
$choice
---> 每次都有随机条目数的数组(对于本例 2)
例子:
/var/www/clients/client1/web1/web/images,/var/www/clients/client1/web1/web/tmp
$list
---> 每次随机条目数的数组(对于本例为 10000)
例子:
/var/www/clients/client1/web1/web/images,/var/www/clients/client1/web1/web/tmp,/var/www/clients/client1/web1/web/includes,/var/www/clients/client1/web1/web/libraries,......
$list
条目总是多于$choice
我在这里有这段代码:
foreach ( $choice as $select )
{
foreach ( $list as $file )
{
if ( (strpos( $file, $select )) !== false )
{
// exclude this
}
else
{
// include this
}
}
}
上面的代码会做什么(不幸的是)是:
步骤 1. 将$select
entry-1 与所有$file
条目进行比较。
$select
第 2 步。将从所有条目中排除条目 1 $file
,并将包括 $select 条目 2。
步骤 3. 将$select
entry-2 与所有$file
条目进行比较。
$select
第 4 步。将从所有条目中排除条目 2 $file
,并将包括 $select 条目 1。
结果:没有排除任何东西。
任何帮助真的很感激。我在这方面待了一个星期,我所尝试的只是把它们从里面拿出来,我没有想法。谢谢你。