rfc:heredoc-with-double-quotes

Differences

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

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
rfc:heredoc-with-double-quotes [2008/03/28 13:12] – created lstrojnyrfc:heredoc-with-double-quotes [2013/10/29 17:30] – -> Implemented nikic
Line 1: Line 1:
-==== Abstract ==== +===== Request for Comments: Allow HEREDOC syntax with double quotes ===== 
-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 (same as for $var = "$var" vs $var = '$var'). Currently we have the following options:+ 
 +  * **Version:** 0.1.1 
 +  * **Date:** 2008-03-22 
 +  * **Author:** Lars Strojny 
 +  * **Status:** [[http://news.php.net/php.zend-engine.cvs/6597|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 ==== ==== Code examples ====
 === Classic HEREDOC === === Classic HEREDOC ===
 <code php> <code php>
-$var = "Hello world";+$var = 'Hello world';
  
 $str = <<<LABEL $str = <<<LABEL
 $var $var
 LABEL; LABEL;
 +
 +echo $str; // gives: Hello world
 </code> </code>
-"$var" is evaluated+"$var" is interpreted.
  
 === NOWDOC === === NOWDOC ===
 <code php> <code php>
 +$var = 'Hello world';
 +
 $str = <<<'LABEL' $str = <<<'LABEL'
 $var $var
 LABEL; LABEL;
 +
 +echo $str; // gives: $var
 </code> </code>
-"$var" is taken literally+"$var" is taken literally.
  
 === Proposed HEREDOC === === Proposed HEREDOC ===
Line 28: Line 48:
 $var $var
 LABEL; LABEL;
 +
 +echo $str; // gives: Hello world
 </code> </code>
  
-"$var" would be intepreted.+"$var" would be interpreted.
rfc/heredoc-with-double-quotes.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1