ID: 11071 Updated by: yohgaki Reported By: [EMAIL PROTECTED] Status: Open Bug Type: Scripting Engine problem Operating System: Linux PHP Version: 4.0.4pl1 New Comment:
Simpler code for this report. Heredoc block supposed to parse just like double quoted strings, but it does not. (PHP4.1.0) Is this a bug or feature? ?php echo '<pre>'; $heredoc = <<< EOD \{ EOD; $string = "\{"; echo "heredoc : $heredoc\n"; echo "string : $string\n"; ?> Previous Comments: ------------------------------------------------------------------------ [2001-05-23 19:09:51] [EMAIL PROTECTED] hi there, this may be obscure and I'm not sure if it is a bug but I've experienced a problem with populating a variable with a HERE statement (ie. $variable = <<< EOD). As far as I was aware the variable is supposed to be populated with anything after the first EOD line and before the ending EOD; line. This HERE statement does not work if you put a slash before a left curly brace ( \{ ) . It's fine with a right curly brace ( \} ). looking at the script below version 1 does not display the first slash, version 2 does (only because I escaped the slash first). This seems to be a bug, so I hope this is the right place to inform you about it. best wishes Simon R Jones [EMAIL PROTECTED] www.studio24.net Configure command: './configure' '--with-gd' '--enable-track-vars' '--with-apxs=/usr/sbin/apxs' '--enable-sysvsem' '--enable-sysvshm' '--with-zlib' '--prefix=/usr' '--with-config-file-path=/etc/httpd/conf' '--enable-memory-limit' '--with-pgsql=/usr' '--with-db2=/usr' '--with-gdbm=/usr' '--with-ndbm=/usr' '--with-dbase' '--enable-trans-sid' '--with-xml=/usr' '--enable-debugger' '--enable-ftp' '--with-ttf' '--with-jpeg-dir=/usr' '--enable-bcmath' '--with-openssl' '--enable-trans-sid' '--with-mysql=/usr' '--with-xpm-dir=/usr/X11R6' '--with-png-dir=/usr' '--with-imap' '--with-dom' '--with-imap-ssl' '--with-mhash=/usr' '--with-mcrypt=/usr' example script (online at http://dev.studio24.net/test.php ): <? $content .= <<< EOD <tt> \{[A-Z0-9][A-Z0-9_]{1,}\} more text \" \ \\ \{ \} \& </tt> EOD; $content2 .= <<< EOD <tt> \\{[A-Z0-9][A-Z0-9_]{1,}\} more text \" \ \\ \{ \} \& </tt> EOD; echo "version 1: $content<br>\n version 2: $content2"; ?> ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=11071&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]