RE: [PHP] is <?= good?
| From: | tedd | Date: | Fri, 11 Jun 2010 21:29:50 +0000 |
| Subject: | RE: [PHP] is <?= good? | ||
| References: | 1 2 3 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-306060@lists.php.net to get a copy of this message | ||
At 1:43 PM -0700 6/11/10, Daevid Vincent wrote:
-----Original Message----- From: tedd [mailto:tedd.sperling@gmail.com] In fact, my practice is to not only use <?php echo, but to encloseDaevid: I'm aware that echo is a language construct and does not require the (). However, please note the reference you provided, namely: http://us3.php.net/echo They use "echo()" to describe the construct -- so, if they can use it, then I figure I'm in good company. I also practice using () because it is easier for *me* to read, understand, and document my work. You are free to do as you want. As for the Python "print" problem, I don't do Python -- so, it can win the lottery, or die, I don't care. As for "don't embed a variable into a literal string and use preprocessing", as I said above, I often do this: <?php echo("The answer is $answer");?> and find no problems whatsoever in doing so. However, I wouldn't do this: <?php echo 'The answer is '.$answer; ?> OR, I would place a space before/after the . (i.e., 'The answer is ' . $answer). However, I don't like doing that because I also program in other languages, which use the dot operator differently. My experience has shown me that most, if not all, languages are merging -- as such, I think the dot operator is more established as something other than just an operation to combine strings. Cheers, tedd -- ------- http://sperling.com http://ancientstones.com http://earthstones.comthe echo argument with a (), like:<?php echo("The answer is $answer");?>I am sure there will be some that think that my practice is an overkill, or not "good practice", but it's a good thing that we all have a choice. Make your choice to best serve how you want your code to look.As per http://us3.php.net/echo echo() is not actually a function (it is a language construct), so you are not required to use parentheses with it. echo() (unlike some other language constructs) does not behave like a function, so it cannot always be used in the context of a function. Additionally, if you want to pass more than one parameter to echo(), the parameters must not be enclosed within parentheses. So you might want to reconsider your coding practice/style here and use the construct as designed or you might end up with a far worse scenario than short-tags could ever provide. Something more along the Python "print" debacle. Also, for the love of God, please don't embed a variable into a literal string and use preprocessing. Do it like so: <?php echo 'The answer is '.$answer; ?>