I just moved from an Ubuntu PHP workstation dev environment back to Windows and am using xampp. I have a bit of code, like so:
<input type="text" name="txtEmail" value="<?=$emailaddress;?>"/>
that I swear worked to display the variable in the textbox when I was developing before. But when I loaded the page on Windows/xampp it just put that text between the quotes in the textbox. Instead, I ended up changing it to something like:
<input type="text" name="txtFirstName" value="<?php echo($firstname);?>" />
The latter makes sense, but I guess I thought there was a shorthand or something, and I must be going crazy because I’m sure the first way was working on a difference environment.
So what’s the best way to do this?
Save yourself a headache and don’t use short tags. They feel dirty, they don’t work on every setup, and I think they may be getting phased out of php altogether (That might be wrong though).
Even if you know how to fix them, you’ll still be irritated every time you have to change your new server to make them work.
Edit: Yup, they’re getting depracated. http://cubicspot.blogspot.com/2009/06/maximum-failure-php-6-deprecates-short.html
2017 Edit: To add an important distinction – the
<?=“short echo” format is always enabled (see Dav’s comment below). The<?“short open” format is a separate matter. For more info see Why are "echo" short tags permanently enabled as of PHP 5.4?