ID: 16763
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Closed
Bug Type: Feature/Change Request
Operating System: ALL
PHP Version: 4.2.0
New Comment:
this was discussed to death on php-dev. it's not going to happen.
Previous Comments:
------------------------------------------------------------------------
[2002-04-23 15:05:37] [EMAIL PROTECTED]
Seeing as how '<?=' and '<%=' are both equivalent to '<?php echo', I
kind of figure that '<?php=' should also be equivalent, but it is not.
Having run into this before, I asked about it and somebody told me it
was in the works to get taken care of for 4.2.0. I checked and it
doesn't seem to be fixed, so I decided to do a bit of hunting to see if
it was within my capabilites. I *think* I've found the changes which
need to be made, but I'm not absolutely certain.
Having searched through all of the source code for all occurrances of
'<%=' and '<?=', I discovered that they only exist (outside of
comments) in one source file.
That said, I *believe* that the following changes to
php-4.2.0\Zend\zend_language_scanner.l would cause '<?php=' to become
equivalent to '<?php echo' just as the other, shorter tags allow.
I don't know how to make an actual patch file, or where to submit it so
here goes. First is the two-line change to zend_language_scanner.l
that would seem to enable the shorthand. Second is the one-line change
to zend_language_scanner.c (just in case the two have to be maintained
seperately).
This should be easily back-portable to previous code trees.
file: php-4.2.0\Zend\zend_language_scanner.l;
replace: lines 941-942;
- - - - - START - - - - -
<INITIAL>"<%="|"<?="|"<?php=" {
if ((yytext[1]=='%' && CG(asp_tags)) || (yytext[1]=='?' &&
CG(short_tags)) || (yytext[1]=='?' && yytext[2]=='p' && yytext[3]=='h'
&& yytext[4]=='p')) {
- - - - - STOP - - - - -
file: php-4.2.0\Zend\zend_language_scanner.c;
replace: line 4086;
- - - - - START - - - - -
if ((yytext[1]=='%' && CG(asp_tags)) || (yytext[1]=='?' &&
CG(short_tags)) || (yytext[1]=='?' && yytext[2]=='p' && yytext[3]=='h'
&& yytext[4]=='p')) {
- - - - - STOP - - - - -
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=16763&edit=1