Hello Gregory,
Sunday, March 23, 2008, 12:13:20 AM, you wrote:
> Stefan Walk wrote:
>> Johannes Schlüter schrieb:
>>> Now we have the big issue: Do we want to have short open tags forever?
>>> Well, without tooo much thinking my idea would be to drop "<?" but keep
>>> "<?=", "<?=" shouldn't conflict with <?xml tags in the same file, but
>>> make it simple to do templating using PHP, on the other hand when not
>>> echo'ing stuff you already have to write more soo the four additional
>>> characters ("php ") don't matter that much - especially every decent
>>> editor/ide should be able to give you a completion on that, if you want.
>>
>> <ul>
>> <? foreach ($items as $item): ?>
>> <li><?=$item?></li>
>> <? endforeach ?>
>> </ul>
>>
>> you can have short stuff without outputting stuff too.
> I see many good reasons to disable short open tags. However, there is a
> compromise that is better from all vantage points:
> <ul>
> <?p foreach ($items as $item): ?>
> <li><?=$item ?></li>
> <?p endforeach ?>
> </ul>
> <?p is a valid PI and would prevent <?xml from being parsed as PHP.
> Also legal is <?: as PI's can start with or contain : or _. Honestly
> though, this is not so important to me, my primary concern is the
> conflict with <?xml. I mention it out of deference for those who
> actually do care about writing scripts that are xml-compliant for some
> strange reason :). Also possible and relatively simple to implement
> would be to allow an = at the start of an expression to alias to T_ECHO,
> so that <?p =$item ?> would work like <?=$item?>. This is, however,
> very perl-ish, so I mention it only as a possible way to preserve that
> aspect of short tags for template usage. God forbid we start seeing
> regular scripts using "=" to mean "echo" :).
> As a note, I use exclusively <?php in my templates and also use <?xml to
> generate xhtml, so I am very much against per-script enabling of short
> tag <? for the annoyance it would introduce of forcing an ini_set() at
> the top of each template and the bottom as well to be a good citizen and
> restore the old value.
To me this sounds more like we were heading towards '<?p' as short of
'<?php' and '<?:' as working erm conflict free form of '<?='.
Best regards,
Marcus
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php