0

有人可以在下面的 php 爆炸功能中提出建议,我们在第 5 次上市后显示脚本。如何在超过 10 个列表的页面上恰好在第 5 个列表和第 10 个列表之后显示脚本

我们尝试使用

if ($i == 5 & $i== 10)

但它不起作用

以下是原始代码 - 在第 5 次上市后显示脚本

   <?php
  $listings = explode("<hr/>", $list);
  $numberOfListings = count($listings);
  for($i = 0; $i < $numberOfListings; ++$i) 
    {
    if ($i == 5) 
    { ?> 

   <script>  </script>

    <?php }
    echo $listings[$i] . "<hr/>";
    }
    ?> 

编辑 感觉如何 - 如果必须在 $i==9 上显示单独的脚本,您能否建议。

4

3 回答 3

2

因为$i0( 0to9是 10,而0to10是 11) 开始。尝试if ($i == 4 || $i== 9),与or操作员。

我也不会使用&&and运算符),因为它不太可能$i同时等于4and 9。我建议您阅读真值表(也许还有命题演算),因为通过查看您最初尝试的内容,了解真值表的工作原理会有所帮助。

真值表
(来源:wlc.edu

于 2013-11-11T05:13:56.447 回答
0

尝试使用模运算符

$listings = explode("<hr/>", $list);
$numberOfListings = count($listings);


for($i = 1; $i < $numberOfListings; ++$i)
    {
    if ($i%5 == 0)
    {
        echo "in";
        ?>
        <script>  </script>
    <?php
    }
    echo $listings[$i-1] . "<hr/>";
}

这里我们从 1 循环到那里 $i <= $numberOfListings 并且在列出时我们将使用 $listings[$i-1]

演示代码在http://codepad.viper-7.com/lrTOgP

于 2013-11-11T05:23:23.493 回答
0

您可以contine在循环结构中使用 , continue 来跳过当前循环迭代的其余部分并在条件评估处继续执行,然后在下一次迭代的开始处继续执行。

                $arr = range(0,9);
                foreach($arr as $number) {
                    if($number < 5) {
                        continue;
                    }
                    print $number;
                }

参考: http: //php.net/manual/en/control-structures.continue.php

于 2013-11-11T05:18:18.750 回答