Delicious Bookmark this on Delicious Share on Facebook SlashdotSlashdot It! Digg! Digg



PHP : Appendices : Migrating from PHP/FI 2 to PHP 3 : Start/end tags

Start/end tags

The first thing you probably will notice is that PHP's start and end tags have changed. The old <? > form has been replaced by three new possible forms:

Example F.1. Migration: old start/end tags

<? echo "This is PHP/FI 2.0 code.\n"; > ?>


As of version 2.0, PHP/FI also supports this variation:

Example F.2. Migration: first new start/end tags

<? echo "This is PHP 3.0 code!\n"; ?> ?>


Notice that the end tag now consists of a question mark and a greater-than character instead of just greater-than. However, if you plan on using XML on your server, you will get problems with the first new variant, because PHP may try to execute the XML markup in XML documents as PHP code. Because of this, the following variation was introduced:

Example F.3. Migration: second new start/end tags

<?php echo "This is PHP 3.0 code!\n"; ?>


Some people have had problems with editors that don't understand the processing instruction tags at all. Microsoft FrontPage is one such editor, and as a workaround for these, the following variation was introduced as well:

Example F.4. Migration: third new start/end tags

<script language="php">

 echo
"This is PHP 3.0 code!\n";

</script> ?>


Change Language


Follow Navioo On Twitter
About the incompatibilities in 3.0
old_function
Start/end tags
if..endif syntax
while syntax
Expression types
Error messages have changed
Short-circuited boolean evaluation
Function TRUE/FALSE return values
Other incompatibilities
eXTReMe Tracker