Gå til innhold

forskjell i language constructs


Anbefalte innlegg

list, echo , print, array med flere er alle «language construct». I manualen til echo står det

echo() is not actually a function (it is a language construct), so you are not required to use parentheses with it.

ut ifra dette, vil jeg tru at jeg ikke trenger å bruke paranteser på noen av de andre «language construct»-ene heller, men

$n = array 'yes','hey';

gir meg

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting '(' in /var/www/tests/langConstr.php on line 6

Hvorfor?

Lenke til kommentar
Videoannonse
Annonse

Du trenger ikke å sette parentes etter echo, include osv. men dette er nødvendig når du har array, nettopp fordi du der definerer forskjellige verdier som skal lagres i en array. Hvis du ikke har parentes så skjønner ikke php hvorfor du vil ang argumenter - siden du setter inn , (komma). Jeg antar at det er gjort for å forbedre hastigheten til PHP - ellers ville den bruke unødvendig tid på å forsøke å tolke argumenter.

Lenke til kommentar

Er nok ikke et vitenskapelig svar, men det ville jo blitt et salig rot hvis man ikke hadde brukt () på array. Spesielt ved multidimensjonale arrays ville det blitt mer eller mindre umulig å se hva som hørte til hvor.

 

For å ta et eksempel:

array 'kake', 'papir', array 'blomst', 'melon';

Er 'melon' en del av det ytre eller indre array'et?`Umulig å si uten paranteser.

Endret av Loomy
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...