PHP Manual
Prev | Appendix D. Migrating from PHP/FI 2 to PHP 3 | Next

# 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 D-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 D-2. Migration: first new start/end tags
    <? echo "This is PHP 3.0 code!\n"; ?>
    ]]|
        </programlisting>
       </example>

       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>
        <title>Migration: second new start/end tags</title>
        <programlisting role="php">
    <![CDATA[
    <?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 D-3. Migration: third new start/end tags
    <script language="php">

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

    </script>

Prev | Home | Next
Migrating from PHP/FI 2 to PHP 3 | Up | if..endif syntax