Heredoc syntaks

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 23. april 2016; checks kræver 4 redigeringer .

Heredóc-syntaks ( /həˈredɒk/ ) er en måde at definere strengvariabler i programmets kildekode.

Heredoc (bogstaveligt fra engelsk "her er et dokument") - syntaksen til at indtaste enkelt- eller (ofte) flerlinjers frit formateret tekst "som den er" i en variabel. [en]

Når strengvariabler defineres, er deres indhold normalt omgivet af enkelte eller dobbelte anførselstegn, og derfor skal anførselstegn, der skal være en del af dataene, escapes ved hjælp af escape-sekvenser . Heredoc-syntaks giver dig mulighed for at definere en streng uden at omslutte den i anførselstegn, så der er ingen grund til at undslippe disse tegn. [2]

Eksempler

Den sædvanlige strengdefinition er:

$s = 'Citater kan være \'enkelt\'' ; $t = "Citater kan være \" dobbelte \" " ;

heredoc definition ( PHP ):

Variabler inde i heredoc fortolkes.

$s = <<< EOL Anførselstegn er 'enkelt' og 'dobbelt'. $navn og {$foo->bar[1]} EOL ;

PHP 5.3+ introducerede en version af heredoc'et, hvor variabler ikke fortolkes. For at gøre dette skal identifikatoren være omgivet af enkelte anførselstegn. Det hedder nowdoc.

$s = <<<' EOL ' Der er 'enkelt' og 'dobbelt' anførselstegn. $navn og {$foo->bar[1]} EOL ;

Også i PHP 5.3+ kan identifikatoren være omgivet af dobbelte anførselstegn. Dette svarer til den uciterede version.

heredoc definition ( Perl ):

$s = << EOL ; Anførselstegn er 'enkelt' og 'dobbelt'. EOL

Efter <<<(eller <<i Perl) skal du angive en identifikator, derefter en linje og derefter den samme identifikator, hvilket lukker indsætningen. [1] [3]

Den afsluttende identifikator skal starte i den første kolonne i rækken. Derudover skal en identifikator i PHP følge de samme navngivningsregler som alle andre etiketter: kun indeholde alfanumeriske tegn og understregninger og må ikke starte med et tal. [4] I Perl kan en identifikator være en hvilken som helst streng, der er omgivet af anførselstegn for den indledende identifikator.

heredoc definition ( Ruby ):

$s = << HEREDOC Der er 'enkelt' og 'dobbelt' anførselstegn. HEREDOC

I Ruby kan en identifikator være vilkårlig og ikke skelne mellem store og små bogstaver. Oftest brugt i praksis HEREDOC. Åbningsidentifikatoren i enkelte anførselstegn fortolker ikke variabler, men i dobbelte anførselstegn opfører den sig på samme måde som uden dem. [5]

Noter

  1. 1 2 HEREDOC Syntaks . Hentet 16. august 2015. Arkiveret fra originalen 23. oktober 2015.
  2. Syntaks af typen streng (strenge) . Hentet 16. august 2015. Arkiveret fra originalen 24. september 2015.
  3. Php.net: heredoc syntaks . Hentet 16. august 2015. Arkiveret fra originalen 14. august 2015.
  4. Php.ru: Strings . Hentet 16. august 2015. Arkiveret fra originalen 15. august 2015.
  5. theglitchy.com: HEREDOC og dets brug i Ruby . Hentet 1. oktober 2019. Arkiveret fra originalen 1. oktober 2019.

Links