rfc:heredoc-with-double-quotes
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Previous revision
Next revision
rfc:heredoc-with-double-quotes [2011/04/06 10:59] – external edit 127.0.0.1
Line 1: Line 1:
 +===== Request for Comments: Allow HEREDOC syntax with double quotes =====
  
 +  * **Version:** 0.1.1
 +  * **Date:** 2008-03-22
 +  * **Author:** Lars Strojny
 +  * **Status:** [[http://news.php.net/php.zend-engine.cvs/6597|Accepted]] (Implemented in PHP 5.3)
 +  * **Votes:** (+6/-4)
 +    * **Pro:** [[http://marc.info/?l=php-internals&m=120679140717702&w=2|Pierre A. Joye]], [[http://marc.info/?l=php-internals&m=120674698503890&w=2|Felipe Pena]] , [[http://marc.info/?l=php-internals&m=120636366616273&w=2|Marcus Boerger]], [[http://marc.info/?l=php-internals&m=120671376003536&w=2|Gwynne Raskind]], Christopher Jones, Lars Strojny
 +    * **Contra:** [[http://marc.info/?l=php-internals&m=120623748226109&w=2|Steph Fox]], [[http://marc.info/?l=php-internals&m=120623999628496&w=2|Edward Z. Yang]], [[http://marc.info/?l=php-internals&m=120627311627368&w=2|Hannes Magnusson]], [[http://marc.info/?l=php-internals&m=120623665525308&w=2|Stanislav Malyshev]]
 +
 +==== Purpose ====
 +In 5_3 we introduced NOWDOC in and it would be logical to allow a double quoted syntax sister of NOWDOC which acts as HEREDOC. The reason to do this is mainly consistency with with variable declarations:
 +<code php>
 +$var = '$var'; // Literally
 +$var = "$var"; // Intepreted
 +</code>
 +
 +==== Code examples ====
 +=== Classic HEREDOC ===
 +<code php>
 +$var = 'Hello world';
 +
 +$str = <<<LABEL
 +$var
 +LABEL;
 +
 +echo $str; // gives: Hello world
 +</code>
 +"$var" is interpreted.
 +
 +=== NOWDOC ===
 +<code php>
 +$var = 'Hello world';
 +
 +$str = <<<'LABEL'
 +$var
 +LABEL;
 +
 +echo $str; // gives: $var
 +</code>
 +"$var" is taken literally.
 +
 +=== Proposed HEREDOC ===
 +<code php>
 +$var = 'Hello world';
 +
 +$str = <<<"LABEL"
 +$var
 +LABEL;
 +
 +echo $str; // gives: Hello world
 +</code>
 +
 +"$var" would be interpreted.
rfc/heredoc-with-double-quotes.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1