Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如果变量等于导航列表中的多个字符串_Php_Variables_Navigation_If Statement_Operators - Fatal编程技术网

Php 如果变量等于导航列表中的多个字符串

Php 如果变量等于导航列表中的多个字符串,php,variables,navigation,if-statement,operators,Php,Variables,Navigation,If Statement,Operators,我发现了类似于这个问题的东西,但它与字符串无关。我只是在寻找编写以下代码的最佳方法,我想一定有一些我不知道的简短版本 <ul id="top-nav"> <li <?php if($filename == "index.php"){echo ("class=\"current\"");} ?>><a href="index.php" title="Home">Home</a></li> <li <

我发现了类似于这个问题的东西,但它与字符串无关。我只是在寻找编写以下代码的最佳方法,我想一定有一些我不知道的简短版本

<ul id="top-nav">
    <li <?php if($filename == "index.php"){echo ("class=\"current\"");} ?>><a href="index.php" title="Home">Home</a></li>
    <li <?php if($filename == "cause.php"){echo ("class=\"current\"");} ?>><a href="cause.php" title="Cause">Cause</a></li>
    <li><a href="order.php" title="Order">Order</a></li>
    <li class="drop-down<?php if($filename == "grand-prize-one.php" | $filename == "grand-prize-two.php"){echo (" current");} ?>"><a href="grand-prize-one.php" title="Grand Prizes">Grand Prizes</a>
      <ul>
        <li><a href="grand-prize-one.php" title="Grand Prize One">Grand Prize One</a></li>
        <li><a href="grand-prize-two.php" title="Grand Prize Two">Grand Prize Two</a></li>
      </ul>
    </li>
    <li <?php if($filename == "early-bird.php"){echo ("class=\"current\"");} ?>><a href="early-bird.php" title="Early Bird">Early Bird</a></li>
    <li class="drop-down<?php if($filename == "vehicles.php" || $filename == "vacations.php" || $filename == "other-prizes.php"){echo (" current");} ?>"><a href="vehicles.php" title="Electronics &amp; more">Other Prizes</a>
      <ul>
        <li><a href="vehicles.php" title="Vehicles">Vehicles</a></li>
        <li><a href="vacations.php" title="Vacations">Vacations</a></li>
        <li><a href="other-prizes.php" title="Electronics &amp; more">Electronics &amp; more</a></li>
      </ul>
    </li>
    <li <?php if($filename == "winners.php"){echo ("class=\"current\"");} ?>><a href="winners.php" title="Winners">Winners</a></li>
  </ul>
我在li元素中的内联PHP


您可以使用开关:


您可以使用开关:


您可以使用

if(in_array($filename, array("vehicles.php", "vacations.php", "other-prizes.php"))){

您可以使用

if(in_array($filename, array("vehicles.php", "vacations.php", "other-prizes.php"))){
试试这个:

<?php 
    if(in_array($filename, array("vehicles.php", "vacations.php", "other-prizes.php")) {
        echo ("class=\"current\"");
    } 
?>
试试这个:

<?php 
    if(in_array($filename, array("vehicles.php", "vacations.php", "other-prizes.php")) {
        echo ("class=\"current\"");
    } 
?>

请使用| |而不是|进行or比较。| |是逻辑运算符,|是位运算符噢哇。非常感谢。我不知道。我不知道我从哪里得到的,但它一直对我有用。奇怪的是,它为什么工作?如果$a或$b为true,逻辑运算符将返回true(
$a | |$b
)。按位运算符将返回在$a或$b中设置的位(
$a |$b
)。如果返回的位不等于零,它们将等于
true
(如果您没有使用
=
!=
运算符)。顺便说一下,您不必使用括号来使用echo(
echo(“当前”);
=>
echo“当前”|
。请使用| |而不是|来进行or比较。| |是一个逻辑运算符,|是一个位运算符噢哇。谢谢。我不知道。我不知道从哪里得到的,但它对我总是有效。只是好奇,为什么它有效?如果$a或$b为真,逻辑运算符将返回真(
$a | |$b
)。按位运算符将返回在$a或$b中设置的位(
$a |$b
)。如果返回的位不等于零,它们将等于
true
(如果您没有使用
==
!=
运算符)。顺便说一句,您不必使用括号来使用echo(
echo(“当前”);
=>
回显“当前”;
<?php 
    if(in_array($filename, array("vehicles.php", "vacations.php", "other-prizes.php")) {
        echo ("class=\"current\"");
    } 
?>
$filenames = array("vehicles.php","vacations.php","other-prizes.php");
if (in_array($filename, $filenames)) {
    // code here
}