Here document
Z programování v bashi jsem byl poměrně zvyklý používat here docs, ale když jsem začal programovat v Perlu, tak jsem měl tak 50% šanci, že here doc bude správně. Teď po nějaké době programování v perlu mám problém opačný - here docy napíšu správně v Perlu, ale v jiných programovacích jazycích mi úspěšnost klesá.
PHP
V PHP jsem se s nimi setkal poprvé - tak jsem se naučil jejich syntaxi a začal je používat. Hlavně v počátcích. Později jsem už nikdy nepotřeboval vypisovat velké množství souvislého textu.
$str = <<DOC foo bar DOC;
Bash
Když jsem začal později programovat v bashi, tak díky shodné syntaxi s nimi nebyl žádný problém.
str=`cat <<DOC foo bar DOC`;
Perl
Ale pak přišel perl - začal jsem s nimi mít potíže. Přestože v dokumentaci tvrdí: A line-oriented form of quoting is based on the shell "here-document" syntax.
, tak realita je opačná.
$str = << DOC; foo bar DOC
Kde je problém
Problém je ve středníku, který se v Perlu píše za otevírajícím identifikátorem, zatímcé v PHP a Bashi ne.
- Martin's blog
- Login to post comments
- Printer-friendly
- 464 reads