Before the misinformation train goes too far out of the station, there are a bunch of things you need to understand about PHP short tags.
The primary issue with PHP's short tags is that PHP managed to choose a tag (
<?) that was used by another syntax, XML.
With the option enabled, you weren't able to raw output the xml declaration without getting syntax errors:
<?xml version="1.0" encoding="UTF-8" ?>
This is a big issue when you consider how common XML parsing and management is.
<? causes conflicts with xml,
<?= does not. Unfortunately, the options to toggle it on and off were tied to
short_open_tag, which meant that to get the benefit of the short echo tag (
<?=), you had to deal with the issues of the short open tag (
<?). The issues associated with the short open tag were much greater than the benefits from the short echo tag, so you'll find a million and a half recommendations to turn
short_open_tag off, which you should.
With PHP 5.4, however the short echo tag has been re-enabled separate from the
short_open_tag option. I see this as a direct endorsement of the convenience of
<?=, as there's nothing fundamentally wrong with it in and of itself.
The problem is that you can't guarantee that you'll have
<?= if you're trying to write code that could work in a wider range of PHP versions.
ok, so now that that's all out of the way
Should you use