[PHP] if inkorten

Pagina: 1
Acties:

Onderwerpen


Verwijderd

Topicstarter
Ik vroeg me af of het volgende ook korter kan (niet specifiek voor extensies, maar zulke if's in het algemeen):

PHP:
1
if ($sExtension == "jpg" or $sExtension == "jpeg" or $sExtension == "gif" or $sExtension == "png") {


Ik had al wat gezocht, maar kreeg niks relevants.

  • Megamind
  • Registratie: Augustus 2002
  • Laatst online: 10-09 22:45
je kan or met || vervangen, alleen wordt het niet korter :P

  • Brakkie
  • Registratie: Maart 2001
  • Niet online

Brakkie

blaat

De extensies in een array zetten en dan checken met in_array of de extensie die aangeboden wordt in je array zit.

Systeem | Strava


  • Joshua
  • Registratie: Juli 2005
  • Laatst online: 16-09 15:47
Misschien iets met regular expressions? (weet even niet zo snel uit me hoofd hoe je beste kan doen)

  • amoen
  • Registratie: Juni 2003
  • Laatst online: 30-06 22:13
Brakkie schreef op donderdag 31 augustus 2006 @ 12:15:
De extensies in een array zetten en dan checken met in_array of de extensie die aangeboden wordt in je array zit.
zo dus:
PHP:
1
2
3
4
5
6
7
8
<?php
$ext = array("jpg", "jpeg", "gif", "png");
if (in_array($sExtension, $ext)) {
  // yup
} else {
  // helaas
}
?>


ik verveelde me :)

heeeeee ..... hoe is het?


Verwijderd

Brakkie schreef op donderdag 31 augustus 2006 @ 12:15:
De extensies in een array zetten en dan checken met in_array of de extensie die aangeboden wordt in je array zit.
--knip--
amoen was me voor :)

[ Voor 16% gewijzigd door Verwijderd op 31-08-2006 12:21 ]


Verwijderd

Topicstarter
PHP:
1
2
$ext = array("jpg","jpeg","gif","png");
if (in_array($sExtension, $ext)) {


Ietsje handiger misschien, maar vind het alleen niet echt korter.

Iets anders?

  • Icelus
  • Registratie: Januari 2004
  • Niet online
Verwijderd schreef op donderdag 31 augustus 2006 @ 12:21:
PHP:
1
2
$ext = array("jpg","jpeg","gif","png");
if (in_array($sExtension, $ext)) {


Ietsje handiger misschien, maar vind het alleen niet echt korter.

Iets anders?
Is toch veel beter leesbaar en korter?

[ Voor 179% gewijzigd door Icelus op 31-08-2006 12:25 ]

Developer Accused Of Unreadable Code Refuses To Comment


  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 02:21

Janoz

Moderator Devschuur®

!litemod

Hoe had je een kortere versie van
PHP:
1
2
3
if (in_array(array("jpeg","jpg","png","gif"))){
  //blaat
}

voorgesteld? Je zult toch alle extenties moeten benoemen. Tenzij je gebruik maakt van de Jomanda plugin waardoor de computer automagisch weet wat je bedoeld.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Grijze Vos
  • Registratie: December 2002
  • Laatst online: 28-02 22:17
code:
1
2
3
4
5
6
7
8
9
10
<?php
switch($sExtension)
{
  case "jpg"  :
  case "jpeg" :
  case "gif"  :
  case "png"  : ifcode();break;
  default: elsecode()
}
?>

Niet echt korter, wel overzichtelijker.

[ Voor 22% gewijzigd door Grijze Vos op 31-08-2006 12:27 ]

Op zoek naar een nieuwe collega, .NET webdev, voornamelijk productontwikkeling. DM voor meer info


Verwijderd

Topicstarter
Icelus schreef op donderdag 31 augustus 2006 @ 12:22:
[...]
Is toch veel beter leesbaar en korter?
Dat zeker, maar ik dacht aan zoiets:

PHP:
1
2
3
<?php
if ($sExtension ("jpg" or "jpeg" or "gif" or "png")) {
?>


Er klopt niks van, maar om een idee te geven waar ik naar op zoek ben.

Verwijderd

Topicstarter
Janoz schreef op donderdag 31 augustus 2006 @ 12:26:
Hoe had je een kortere versie van
PHP:
1
2
3
if (in_array(array("jpeg","jpg","png","gif"))){
  //blaat
}

voorgesteld? Je zult toch alle extenties moeten benoemen. Tenzij je gebruik maakt van de Jomanda plugin waardoor de computer automagisch weet wat je bedoeld.
Dat is wat ik zocht. Dank u vriendelijk! :)

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 02:21

Janoz

Moderator Devschuur®

!litemod

Tjongejonge, dat had je zelf niet kunnen extraheren uit de post van amoen? Het enige verschil is dat ik geen variabele heb geintroduceerd.

@hieronder, inderdaad, nu zie ik het ook :). Krijg je als je snel ff uit het hoofd wat code tikt.

[ Voor 26% gewijzigd door Janoz op 31-08-2006 13:09 ]

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • Icelus
  • Registratie: Januari 2004
  • Niet online
in_array verwacht toch altijd minimaal twee parameters?

Developer Accused Of Unreadable Code Refuses To Comment


  • wackmaniac
  • Registratie: Februari 2004
  • Laatst online: 19-09 18:02
Icelus schreef op donderdag 31 augustus 2006 @ 12:43:
in_array verwacht toch altijd minimaal twee parameters?
Ja, de array en wat je zoekt in die array :)

Read the code, write the code, be the code!


  • DemonTPx
  • Registratie: December 2002
  • Laatst online: 09-04 10:49
Spike1506 schreef op donderdag 31 augustus 2006 @ 12:16:
Misschien iets met regular expressions? (weet even niet zo snel uit me hoofd hoe je beste kan doen)
PHP:
1
if(preg_match("/^(jpe?g|png|gif)$/", $sExtension))


edit:
haakje en ^ en $ vergeten :)

[ Voor 7% gewijzigd door DemonTPx op 31-08-2006 14:37 ]


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

misschien moet je even ^ en $ toevoegen, anders matcht ie ook "ksejpngekjr"

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • ReseTTim
  • Registratie: Juni 2000
  • Laatst online: 20-09 16:23

ReseTTim

Chocolate addicted

ik had laatst zelfs 'pjpeg' dus heb ik maar die ook maar toegevoegd.. je zult maar net zien dat die er ook weer tussen komt.. of het was iets raar / fouts..

Mijn profiel - Te koop: Overzicht van spullen..

Pagina: 1