Likes Likes:  0
Resultaten 1 tot 15 van de 30
Pagina 1 van de 2 1 2 LaatsteLaatste
Geen
  1. #1
    Branko Collin
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    [PHP] bestaan enumeraties in PHP?


    Heeft PHP de mogelijkheid om enumeraties (opsommingen) te definieren?
    (Anders dan door twintig define()'s op te nemen?)

    --
    Branko Collin
    if you reply by e-mail, please change invalid to nl and z to s
    (but replies to the news group are preferred)



  2. #2
    Daniel Tryba
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Branko Collin <branko@mixedflavourz.invalid> wrote:
    > Heeft PHP de mogelijkheid om enumeraties (opsommingen) te definieren?
    > (Anders dan door twintig define()'s op te nemen?)


    Wat heeft een enumeratie te maken met defines? Ik zou voor een
    enumeration persoonlijk een array/hash gebruiken in PHP.

    --

    Daniel Tryba


  3. #3
    Branko Collin
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Daniel Tryba wrote:
    > Branko Collin <branko@mixedflavourz.invalid> wrote:
    >> Heeft PHP de mogelijkheid om enumeraties (opsommingen) te definieren?
    >> (Anders dan door twintig define()'s op te nemen?)

    >
    > Wat heeft een enumeratie te maken met defines? Ik zou voor een
    > enumeration persoonlijk een array/hash gebruiken in PHP.


    Een enumeratie is toch een gelijktijdige declaratie van een aantal
    constanten? Voor een declaratie van 1 constante gebruik je in PHP de
    functie define().

    > Ik zou voor een enumeration persoonlijk een array/hash gebruiken in PHP.


    Dat kan natuurlijk ook, ik neem even aan dat PHP expressief genoeg is om
    een array global te verklaren over alle scripts.




  4. #4
    Daniel Tryba
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Branko Collin <branko@mixedflavourz.invalid> wrote:
    >> Wat heeft een enumeratie te maken met defines? Ik zou voor een
    >> enumeration persoonlijk een array/hash gebruiken in PHP.

    >
    > Een enumeratie is toch een gelijktijdige declaratie van een aantal
    > constanten?


    Ik breng enumeratie in verband met java.util.Enumerations wat het
    dichts bij komt in PHP is de for/foreach/list/each functionaliteit.

    >> Ik zou voor een enumeration persoonlijk een array/hash gebruiken in PHP.

    >
    > Dat kan natuurlijk ook, ik neem even aan dat PHP expressief genoeg is om
    > een array global te verklaren over alle scripts.


    $GLOBALS is een super global array, daar kan je dus je spullen in kwijt.

    --

    Daniel Tryba


  5. #5
    Marcus
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Daniel Tryba wrote:
    > Branko Collin <branko@mixedflavourz.invalid> wrote:
    >>> Wat heeft een enumeratie te maken met defines? Ik zou voor een
    >>> enumeration persoonlijk een array/hash gebruiken in PHP.

    >>
    >> Een enumeratie is toch een gelijktijdige declaratie van een aantal
    >> constanten?

    >
    > Ik breng enumeratie in verband met java.util.Enumerations wat het
    > dichts bij komt in PHP is de for/foreach/list/each functionaliteit.


    Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en een
    variabele van dat datatype de waarde Appel, Peer of Banaan kan
    hebben. In java zou je dat bijvoorbeeld zo doen (wellicht kan het ook zo
    in php):

    class Fruit{

    public static final Fruit APPEL = new Fruit(1);
    public static final Fruit PEER = new Fruit(1);
    public static final Fruit BANAAN = new Fruit(1);

    private int a;
    private Fruit(int i){
    a = i;
    }

    public bool equals(Fruit e){
    return (this.a = e.a);
    }
    }


    en dan ergens in de code

    Fruit x = Fruit.APPEL


    en ergens met Fruit x en y

    if (x.equals(y)){....}

    etc

    Mark

  6. #6
    Inca
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Marcus wrote:
    >> Ik breng enumeratie in verband met java.util.Enumerations wat het
    >> dichts bij komt in PHP is de for/foreach/list/each functionaliteit.

    >
    > Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en een
    > variabele van dat datatype de waarde Appel, Peer of Banaan kan
    > hebben.


    Maar in een taal als php, waar weinig met datatypes wordt gedaan, is het
    volgens mij nauwelijks zinnig.
    --
    Inca
    JA - Wel integratie
    NEE - Niet met buitenlanders
    http://www.poldermodelstickers.nl/



  7. #7
    Marcus
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Inca wrote:
    > Marcus wrote:
    >>> Ik breng enumeratie in verband met java.util.Enumerations wat het
    >>> dichts bij komt in PHP is de for/foreach/list/each functionaliteit.

    >>
    >> Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en een
    >> variabele van dat datatype de waarde Appel, Peer of Banaan kan
    >> hebben.

    >
    > Maar in een taal als php, waar weinig met datatypes wordt gedaan, is het
    > volgens mij nauwelijks zinnig.


    Dat een taal het in de hand werkt slordig te werken hoeft nog geen reden
    te zijn dat ook te doen.

    Mark

  8. #8
    Branko Collin
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Marcus wrote:
    > Inca wrote:
    >> Marcus wrote:
    >>>> Ik breng enumeratie in verband met java.util.Enumerations wat het
    >>>> dichts bij komt in PHP is de for/foreach/list/each functionaliteit.
    >>>
    >>> Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en
    >>> een variabele van dat datatype de waarde Appel, Peer of Banaan kan
    >>> hebben.

    >>
    >> Maar in een taal als php, waar weinig met datatypes wordt gedaan, is
    >> het volgens mij nauwelijks zinnig.

    >
    > Dat een taal het in de hand werkt slordig te werken hoeft nog geen
    > reden te zijn dat ook te doen.


    Ik ben geen echte programmeur, dus doe ik netjes wat me op school is
    geleerd.

    enum KANFIETSEN=1, KANZWEMMEN=2, KANVETERSSTRIKKEN=4, KANBROODJESSMEREN=8;

    $persoon[0] = KANFIETSEN or KANZWEMMEN;
    $persoon[1] = KANZWEMMEN or KANVETERSSTRIKKEN;
    $persoon[2] = KANVETERSSTRIKKEN or KANBROODJESSMEREN;

    // bedenk zelf de loop erbij
    if ($persoon[$i] or KANZWEMMEN == $persoon[$i])
    {
    access_zwembad($persoon[$i]);
    }

    // Bedankt voor de tips.




  9. #9
    Marcus
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Branko Collin wrote:
    > Marcus wrote:
    >> Inca wrote:
    >>> Marcus wrote:
    >>>>> Ik breng enumeratie in verband met java.util.Enumerations wat het
    >>>>> dichts bij komt in PHP is de for/foreach/list/each functionaliteit.
    >>>>
    >>>> Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en
    >>>> een variabele van dat datatype de waarde Appel, Peer of Banaan kan
    >>>> hebben.
    >>>
    >>> Maar in een taal als php, waar weinig met datatypes wordt gedaan, is
    >>> het volgens mij nauwelijks zinnig.

    >>
    >> Dat een taal het in de hand werkt slordig te werken hoeft nog geen
    >> reden te zijn dat ook te doen.

    >
    > Ik ben geen echte programmeur, dus doe ik netjes wat me op school is
    > geleerd.
    >

    [knip enumeraties]

    Je hebt geen OO geleerd?

    $persoon[$i].kanzwemmen = true

    if ($persoon[$i].kanzwemmen){

    etc.

    Mark

  10. #10
    Branko Collin
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?


    Marcus wrote:
    > Branko Collin wrote:


    >> Ik ben geen echte programmeur, dus doe ik netjes wat me op school is
    >> geleerd.
    >>

    > [knip enumeraties]
    >
    > Je hebt geen OO geleerd?
    >
    > $persoon[$i].kanzwemmen = true
    >
    > if ($persoon[$i].kanzwemmen){


    Jawel, maar dat heb ik altijd een slecht systeem gevonden. Vooral het idee
    van data hiding lijkt nogal zwaar te steunen op de (over het algemeen 95%
    afwezige) documenteerkwaliteiten van degene die de objecten bedenkt en
    implementeert.

    Waarschijnlijk een overtrokken reactie van mij, maar leer me nu nog maar
    eens nieuwe streken. :-)




  11. #11
    Marcus
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Branko Collin wrote:
    >
    > Marcus wrote:
    >> Branko Collin wrote:

    >
    >>> Ik ben geen echte programmeur, dus doe ik netjes wat me op school is
    >>> geleerd.
    >>>

    >> [knip enumeraties]
    >>
    >> Je hebt geen OO geleerd?
    >>
    >> $persoon[$i].kanzwemmen = true
    >>
    >> if ($persoon[$i].kanzwemmen){

    >
    > Jawel, maar dat heb ik altijd een slecht systeem gevonden. Vooral het idee
    > van data hiding lijkt nogal zwaar te steunen op de (over het algemeen 95%
    > afwezige) documenteerkwaliteiten van degene die de objecten bedenkt en
    > implementeert.


    Over het algemeen documenteert OO zichzelf meer dan gewoon
    procedureel. Ik kan de meeste objecten in een keer overzien, dat is bij
    een lange listing van honderden regels wel anders.

    Mark

  12. #12
    Daniel Tryba
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Marcus <mark@ijbema.xs4all.nl.invalid> wrote:
    >> Ik breng enumeratie in verband met java.util.Enumerations wat het
    >> dichts bij komt in PHP is de for/foreach/list/each functionaliteit.

    >
    > Een enumeratie is bijvoorbeeld als je een datatype Fruit hebt, en een
    > variabele van dat datatype de waarde Appel, Peer of Banaan kan
    > hebben. In java zou je dat bijvoorbeeld zo doen (wellicht kan het ook zo
    > in php):
    >
    > class Fruit{
    > public static final Fruit APPEL = new Fruit(1);
    > public static final Fruit PEER = new Fruit(1);
    > public static final Fruit BANAAN = new Fruit(1);

    [knip]
    > }


    Aha, enums! Helemaal over het hoofd gezien. Bovenstaande voorbeeld moet
    wellicht nog wel te doen zijn in PHP.

    --

    Daniel Tryba


  13. #13
    Inca
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Daniel Tryba wrote:
    >> Dat kan natuurlijk ook, ik neem even aan dat PHP expressief genoeg
    >> is om een array global te verklaren over alle scripts.

    >
    > $GLOBALS is een super global array, daar kan je dus je spullen in
    > kwijt.


    Nadeel is dat je elke keer zo'n hele lelijke en onoverzichtelijke
    constructie krijgt. En dat is vaak een belangrijke reden om constanten te
    gebruiken.
    Ik heb lang gezocht maar er is niet echt een lekkere oplossing: constanten
    kunnen alleen scalars zijn, geen arrays, geen enums. (In Php 5 misschien?)
    Dus zit je aan een extra $GLOBAL['arr']['iets'] vast of een extra global in
    elke functie.
    --
    Inca
    NEE - Geen buitenlanders
    JA - Wel shoarma
    http://www.poldermodelstickers.nl/



  14. #14
    Daniel Tryba
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Inca <shadow*movements@wanadoo.nospam.invalid> wrote:
    >> $GLOBALS is een super global array, daar kan je dus je spullen in
    >> kwijt.

    >
    > Nadeel is dat je elke keer zo'n hele lelijke en onoverzichtelijke
    > constructie krijgt. En dat is vaak een belangrijke reden om constanten te
    > gebruiken.
    > Ik heb lang gezocht maar er is niet echt een lekkere oplossing: constanten
    > kunnen alleen scalars zijn, geen arrays, geen enums. (In Php 5 misschien?)
    > Dus zit je aan een extra $GLOBAL['arr']['iets'] vast of een extra global in
    > elke functie.


    De oplossing zoals Marcus die gaf werkt prima (na enig herschrijven voor
    PHP implementatie van OO). Namelijk ongeacht van de daadwerkelijk
    oplossing die in een file te includen welke deze oplossing bevat, met
    een class kan je dan mooi een namespace met statische waarden
    definieren, zo ben je ook meteen van die lelijke defines af.

    Veel viezers dan een define bestaat namelijk niet in PHP. Ze zijn immers
    globaal, vanwege "backward" compatibility (en dan heb ik het niet over
    de tegenpool van forwards compatible) word slordig omspringen van
    ontwikkelaars met "variablen" automatisch gecorrigeerd, bv: $_GET[foob]
    wordt gecorrigeerd naar $_GET['foob'] indien er geen constante genaamt
    'foob' is, en alleen primitieven bevatten.

    MAW OO is in dit (en veel andere) gevallen de oplossing.

    --

    Daniel Tryba


  15. #15
    Inca
    [PHP] bestaan enumeraties in PHP?
    Gast
    n/a Berichten
    Berichten zijn liked



    Thread Starter

    Re: [PHP] bestaan enumeraties in PHP?

    Daniel Tryba wrote:
    > De oplossing zoals Marcus die gaf werkt prima (na enig herschrijven
    > voor PHP implementatie van OO).


    't Is nogal overkill toch, voor zoiets simpels? Plus dat ik een grote hekel
    heb aan dergelijke dingen - voor mij volstrekt onoverzichtelijk. Je hebt 8
    regels nodig voor iets wat in bv c++ mogelijk is op 1 (Jawel: enums)

    > Veel viezers dan een define bestaat namelijk niet in PHP. Ze zijn
    > immers globaal,


    Het zou leuk zijn om dat aan te kunnen geven maar verder vind ik het ideaal.
    Het idee van lokale consts is me ook nog niet helemaal duidelijk eigenlijk.

    > word slordig omspringen van
    > ontwikkelaars met "variablen" automatisch gecorrigeerd, bv:
    > $_GET[foob] wordt gecorrigeerd naar $_GET['foob'] indien er geen
    > constante genaamt 'foob' is, en alleen primitieven bevatten.


    Dat laatste (alleen primitieven) is een groot probleem, voor het eerste
    wordt netjes gewaarschuwd.
    --
    Inca
    NEE - Geen kandidaat
    JA - Wel nieuwe NAVO topman
    http://www.poldermodelstickers.nl/



Pagina 1 van de 2 1 2 LaatsteLaatste

Webhostingtalk.nl

Contact

  • Rokin 113-115
  • 1012 KP, Amsterdam
  • Nederland
  • Contact
© Copyright 2001-2026 Webhostingtalk.nl.
Web Statistics