Archief - PHP: if statement met array (code inside)

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Xavez

Legacy Member
De vraag is eigenlijk héél eenvoudig: hoe kan ik dit properder doen (dit voelt gewoon bricolé aan :p):

PHP:
<?
$m = array("1.php","pg1.php","pgwhatever.php","whatchuwant.php");
$s = $_SERVER['SCRIPT_NAME']
?>

PHP:
<ul <? if ($s == $m[0] or $s == $m[1] or $s == $m[2] or $s == $m[3]) {echo('class="hide"');}?>>
<li>blahblah</li>
</ul>

den Acid Burn

Legacy Member
PHP:
for ($i=0; $i<$m.length; $i++) {
   if ($s == $m[$i]) {
      echo('class="hide"');
   }
}

passero

Legacy Member
Eerst en vooral niet die if in uw html tag schrijven :s
schrijf dan eerder zo iets:

PHP:
<?
 if ($s == $m[0] or $s == $m[1] or $s == $m[2] or $s == $m[3]) 
{
    $sClass = "class='hide'";
}
?>

<ul <?= $sClass ?> >
<li>blahblah</li>
</ul>

Wat je makkelijker kan doen is gebruik maken van de functie key_exist :

PHP:
<?
$m = array_flip($m);
if(array_key_exist($s,$m)) 
{
   $sClass = "class='hide'";
}
?>

Rvl

Legacy Member
Waarom zou je hier ne array_flip doen, extra regel zonder nut.
PHP:
function checkPageName($name)
{
 $ar = array("1.php","pg1.php","pgwhatever.php","whatchuwant.php");
 if(in_array($name, $ar)) echo "class=\"hide\"";
}
nu moet ge gewoon in u html het volgende zetten <?php checkPageName("naamVanDeFile"); ?>
Deze code is gemaakt da ge hem gemakkelijk kunt hergebruiken (indien nodig), anders moet ge er geen functie van maken

@passero: u code is nogal raar, vindt ge zelf niet?

orez

Legacy Member
passero zei:
Eerst en vooral niet die if in uw html tag schrijven :s
schrijf dan eerder zo iets:

Eerst en vooral GEEN gebruik maken van <? ?> of <?= $echo ?>

maar van <?php echo $echo; ?>
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan