Using PHP Short Tags
PHP Short Tags refers to '<?' when a full tag is '<?php'. Most PHP installations has short tags support - but there are a few installations that have turned it off. So it is recommended that you don't use the short tags in your app if you plan to distribute it.
Short tags are considered bad because they are in conflict with XML's open tag - '<?xml'. If it is a PHP file, the interpreter will think everything after the '<?' is PHP code. As a result it will show a parsing error.
This problem can be solved easily - I use this code...
<?php echo '<?'; ?>xml
I use the full tag almost all the time. The only exception is that I use <?= $print_me ?>. And I am not prepared to give that up.
I follow the MVC pattern in my projects. My PHP framework, iFrame, is an MVC framework. In the template(view) part, there is a lot of usage of such tags. It is more concise and more readable than the alternative...
<?= $print_me ?>
<?php print $print_me; ?>
You tell me - which is better?
I hear that they will be introducing <php= > in PHP 6. Until then, I will continue to use <?= ?>.

Comments
<?php
echo "test";
?>
And, as you said yourself, it's not recommended.
At my MVC framework, I use the 'Controller PUSH to View' method, instead of the 'View PULL from Controller'.
So instead of placing variables at my view which are requested by the view from the Controller, all data is replaced at the template engine by the Controller into the View.
Example (HTML - View):
<table>
<!-- ROW -->
<tr>
<td>#{id}</td>
<td>{name}</td>
<td>view</td>
</tr>
<!-- /ROW -->
</table>
Example (PHP - Controller):
<?php
$tpl->get('example.html');
$items = $db->findAll('items'); // get all rows from the 'items' table
foreach($items as $item) {
$tpl->parse('id', $item['id']); // parse the 'id' variable
$tpl->parse('name', $item['name']); // parse the 'name' variable
$tpl->block('ROW'); // render the 'ROW' block
}
$tpl->render(); // print the HTML
?>
Using your framework's template object compared to using straight php (which originally was a template language in itself) is totally irrelevant to this topic.
I would like to know why it is "a case of bad coding"...
use <?php to start page to solve xml problem
then use short echo <?=$print_me?> any where
His code actually made me chuckle. Hehe.
a, strong, em, b, i, code, pre, pandbrallowed. Other tags will be shown as code(< will become <). Urls, Line breaks will be auto-formated.