Не выполняется код

Тема в разделе "PHP", создана пользователем cmanprof, 9 июл 2008.

Статус темы:
Закрыта.
Модераторы: latteo
  1. cmanprof

    cmanprof Писатель

    Регистр.:
    7 апр 2008
    Сообщения:
    9
    Симпатии:
    5
    Если взять код в скобки такого вида, то все работает:
    PHP:
    <?php
    echo "Hello, world.";
    ?>
    А если написать такое:
    PHP:
    <?
    echo 
    "Hellow, world.";
    ?>
    то скрипт перестает работать, перерыл конфиг апача, но так и не нашел никаких намеков в нём, как заставить работать код в таком виде. Что можно сделать, чтобы заработало?
     
  2. art_mixer

    art_mixer Писатель

    Регистр.:
    5 июл 2008
    Сообщения:
    3
    Симпатии:
    1
    В php.ini директива short_open_tag = On включит поодержку коротких тэгов.
     
    cmanprof нравится это.
  3. slik_jay

    slik_jay ^_^

    Регистр.:
    24 май 2008
    Сообщения:
    50
    Симпатии:
    27
    в рекомендациях к PHP 6 написано что скорее всего ета версия вообще не будет поддерживать короткие теги, так что на всякий лучше приучиться пользоваться длинными :)
     
    cmanprof нравится это.
  4. bork1234

    bork1234 Постоялец

    Регистр.:
    25 июн 2008
    Сообщения:
    65
    Симпатии:
    13
    В длинных тегах не работает такая вещь как
    PHP:
    <?='чего-то-там';?>
    Если вдруг однажды понадобиться перейти с коротких, то это можно будет легко сделать с помощью replace по всем скриптам проекта.
     
    cmanprof нравится это.
  5. B1rdEX

    B1rdEX Постоялец

    Регистр.:
    30 июн 2008
    Сообщения:
    141
    Симпатии:
    26

    Хм, почему-то у меня работает на шортах (short tags)..
    Это конструкция языка, почему она должна не работать?
     
  6. bork1234

    bork1234 Постоялец

    Регистр.:
    25 июн 2008
    Сообщения:
    65
    Симпатии:
    13
    Я про то и говорю, что при отключеных коротких тегах подобная конструкция не работает.
     
  7. cmanprof

    cmanprof Писатель

    Регистр.:
    7 апр 2008
    Сообщения:
    9
    Симпатии:
    5
    Проблема в том, что написан целый движок (чужой) таким образом и менять все муторно + постоянные проблемы с обновлением возникали бы, поэтому проще было включить поддержку, чем каждый раз исправлять.

    Лучше писать сразу без коротких, но почему-то не все это делают, похоже это просто сила привычки :)
     
  8. gregzem

    gregzem

    Регистр.:
    21 окт 2007
    Сообщения:
    201
    Симпатии:
    66
    Правда жизни заключается в том, что хотите вы этого или нет, но хостеры переходят на новые версии PHP, старые остаются в лучшем случае, как CGI. Поэтому волею судеб придется или адаптировать заточенные под старые версии модули под новые, или писать новые. Сам сталкивался уже несколько раз, код, написанные несколько лет назад под PHP4 перестает работать на хостингах, которые перевели на PHP5. Переводят без предупреждения и обсуждения, аргументируя, что PHP4 более не поддерживается разработчиком. Думаю, то же будет и с PHP6.
    Короткие теги сейчас также перестают поддерживаться.
     
Статус темы:
Закрыта.