Vraag & Antwoord

Webprogrammeren & scripting

Korter script

13 antwoorden
  • Kan dit onderstaande script ook korter gescript worden? [code:1:a944cb365e]if (isset($newstitel[0])) { echo "<b>$newstitel[0]</b> <br>(<i>op $newsdate[0]</i>)<br>"; echo "$newsmess[0]<br><br>"; } if (isset($newstitel[1])) { echo "<b>$newstitel[1]</b> <br>(<i>op $newsdate[1]</i>)<br>"; echo "$newsmess[1]"; } if (isset($newstitel[2])) { echo "<b>$newstitel[2]</b> <br>(<i>op $newsdate[2]</i>)<br>"; echo "$newsmess[2]"; }[/code:1:a944cb365e] En dan moet het 10x. de gegevens komen uit een array. P.S. Ik ben nog maar een beginner. :roll: :roll:
  • Lees dit eens : http://www.tizag.com/phpT/forloop.php
  • Ik snap nog niet geheel hoe ik dat dan moet scripten. Ik heb het nu als volgt gedaan: [code:1:01128b13b5] for (;$newstitel < 10 && $newsdate < 10 && $newsmess < 10; $newstitel++ && $newsdate++ && $newsmess++) { echo "<b>$newstitel</b> <br>(<i>op $newsdate</i>)<br>"; echo "$newsmess<br><br>"; } [/code:1:01128b13b5]Maar dat werkt niet. Kunnen jullie mij gaarne nog iets verder op weg helpen??
  • Niet getest maar zoiets zou het moeten worden: [code:1:a9dac1a7eb] for ( $counter = 0; $counter <= 9; $counter += 1) { if (isset($newstitel[$counter])) { echo "<b>$newstitel[$counter]</b> <br>(<i>op $newsdate[$counter]</i>)<br>"; echo "$newsmess[$counter]<br><br>"; } } [/code:1:a9dac1a7eb]
  • Mijn dank is groot, ja schier verpletterend. Nu weet ik gelijk wat het nut is van lussen, dat snapte ik namelijk niet. :wink: :wink: :wink:
  • Graag gedaan, succes verder!
  • Nog korter is om $counter += 1 te vervangen door $counter++ Tis maar net wat je wilt :)
  • als je dan toch gaat mierenne*ken doe het dan meteen goed. :wink: $counter <= 9 -> $counter < 10 Scheelt je in elke lus een extra vergelijking. :wink:
  • En nog korter: while ($counter++ < 10) { ... } En zo kun je doorgaan, tot het totaal onleesbaar wordt. ;)
  • haha en als-ie nou moet doorlopen totdat er eentje niet meer isset is ( :-? ) while ( isset($newstitel[$counter++])) { echo ""; } (wel eerst ff de counter op 0 zetten (of -1 ?) )
  • Dit gaat helaas de mist in, als bijvoorbeeld nummer 2 niet, en opvolgende nummers wel bestaan. Trouwens, is dat hele isset wel nodig? Kun je niet gewoon een foreach doen? Kan wel problemen geven, als een vaste volgorde gewenst is. foreach($newstitel as $var) { ... } http://www.phpfreaks.com/phpmanual/page/control-structures.foreach.html http://nl3.php.net/foreach Edit: syntax gecorrigeerd, links toegevoegd.
  • [quote:81a2495c84="gerben"]Dit gaat helaas de mist in, als bijvoorbeeld nummer 2 niet, en opvolgende nummers wel bestaan. [/quote:81a2495c84] ja, maar dat staat ook in mn zinnetje ervoor, als dat nou juist t geval is (kan logisch zijn in sommige situaties...)
  • Ik zou persoonlijk kiezen voor een foreach geloof ik. Dan weet je inderdaad zeker dat er geen onzinnige dinge uit die lus lopen. Bovendien is foreach ook iets sneller dan allerlei if-statements als ik het goed onthouden heb. Codetechnisch is het ook nog iets netter.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.