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