按某些值过滤 PHP 中的多维数组

我需要修复现有代码,仅当值0,1和2相同但我无法到达时才能写入值。例如,我用魔杖在第一种情况下看到元素(1 = 1 = 1),而不是在第二种情况下(2!1 = 1)。


$plist=array(

        array('100% CSB','75% CSB','Sans CSB','MSN 100%CSB','MSN sans CSB'),

        array(1,1,1,10.4,9.09,),

        array(2,1,1,20.4,17.84,),

        array(2,2,1,21.7,18.97,),

        array(2,2,2,31.4,27.89,),

        array(3,2,2,40.5,36.31,),

        array(3,3,2,42.8,38.44,),

        array(3,3,3,52.2,47.09,),

        array(4,3,3,60.7,54.78,),

        array(4,4,3,64,57.77,),

        array(4,4,4,73.3,66.18,),

        array(5,4,4,81,73.15,),

        array(5,5,4,85.2,77.01,),

        array(5,5,5,94.2,85.45,),

        array(6,5,5,101.2,92.01,),

        array(6,6,5,106.1,96.6,)

    );

    $cnt=0;

    foreach ($plist as $pligne) {


        $cnt++;

        if ($cnt==19) {

            echo '</table></td><td bgcolor="#ffffff">&nbsp;</td><td valign="top">';

            echo '<table border="0" cellspacing="0" cellpadding="0" class="hoverTable"><tr>';

            foreach($plist[0] as $ke) {

                echo '<td align="right">'.$ke.'&nbsp;</td>';

            }

            echo '</tr>';


        }

        $minu=floatval($pligne[3])-(floatval($pligne[3])-floatval($pligne[4]))*0.25;

        echo '<tr onmouseover="document.form.abc.value='.$pligne[3].'; document.form.scsb.value='.$pligne[4].'; 

                document.form.min.value='.round($minu,2).';     "

                onclick="allid.listeplex.style.display=\'none\'; allid.affplex.style.display=\'block\';""

             >';

        foreach($pligne as $ke) {

            echo '<td align="right">'.$ke.'&nbsp;</td>';

        }

        echo '</tr>';

    }

我的第一个想法是这样的:


if($plist[$cnt][0]===$plist[$cnt][1] AND $plist[$cnt][0]===$plist[$cnt][1] AND $plist[$cnt][0]===$plist[$cnt][1]){

}

但它不起作用(不是在哪里放置它或使用哪个变量名称)


MM们
浏览 151回答 1
1回答

Qyouu

检查 1st 等于 2nd,1st 等于 3rd。使用内部此条件:foreach ($plist as $pligne) {if&nbsp;($pligne[0]&nbsp;===&nbsp;$pligne[1]&nbsp;&&&nbsp;$pligne[0]&nbsp;===&nbsp;$pligne[2])&nbsp;{您无需在代码段中手动递增,可以在循环中声明并省略手动递增步骤 ()。$cnt$cntforeach()$cnt++;foreach&nbsp;($plist&nbsp;as&nbsp;$cnt&nbsp;=>&nbsp;$pligne)&nbsp;{如果需要无条件地允许数组中的第一行,则只需检查其是否为零。$cntif&nbsp;(!$cnt&nbsp;||&nbsp;($pligne[0]&nbsp;===&nbsp;$pligne[1]&nbsp;&&&nbsp;$pligne[0]&nbsp;===&nbsp;$pligne[2]))&nbsp;{
打开App,查看更多内容
随时随地看视频慕课网APP