1. PHP / Говнокод #4820

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    if (!defined(DIRECTORY_SEPARATOR)) {
      $sep = (substr(strtolower(PHP_OS),0,3) == 'win') ? '\\' : '/';
      define('DIRECTORY_SEPARATOR', $sep);
    }

    Даже если и так, то может быть и MAC OS'овский разделитель учтём???
    Я-то думал обычный slash - решение всех проблем, или на МАКАХ подавляющее
    число хостингов что ли?

    Запостил: dwinner, 03 Декабря 2010

    Комментарии (34) RSS

    • чо?
      Ответить
    • пхп3 ?
      Ответить
    • При чем тут мак?
      Ответить
      • Хоть в винде и принято использовать обратный слэш (\), я не встречал ситуаций, когда не подходил бы и прямой (/)

        Так что и в винде и в никсах (и в макоси) вполне можно использовать / :

        ./Documents/Downloads/
        Ответить
        • Вот и я про это!
          Ответить
        • На самом деле ещё со времён ДОС.

          Но это для генерации. А для парсинга?
          Ответить
      • В маке разделитель директорий другой
        Ответить
        • Какой другой то?
          Разделитель на всех никсоподобных - "/"

          При чем тут маки и тем более хостинги?
          Ответить
          • на самом деле :
            Ответить
            • только в классике
              в десятке уже никсовый
              Ответить
              • а, все таки поняли, что соригинальничали где совсем не нужно...
                Ответить
                • я?)
                  Ответить
                  • макосокреаторы
                    Ответить
                    • я вообще не понял -- причем тут мак)
                      мак 10 это позикс
                      и сепаратор там соответствующий
                      до этого (классика) это другая ось (вернее другие оси -- их там много)
                      и сепаратор там : и перевод строки там \r и вообще все ужасно
                      Ответить
                      • для меня понятие маков - как вы говорите, классика.
                        Ответить
                        • а винда для Вас это 9x?;).

                          зы: не я говорю
                          Mac OS Classic -- охфициальный термин
                          Ответить
                          • 3.11 же.
                            Ответить
                            • он же сказал классик, а не 1.0).

                              Как звали первый эппл? по легенде его назвали в честь непризнаной дочери Джобса. Лиза кажется
                              Ответить
    • в нормальных языках программирования есть константы для файл сепаратора.
      в пыхе, как всегда, горе-программисты изобретают квадратные велосипеды
      Ответить
      • вообще то как раз эта константа уже предопределена. Видимо аффтар сабжа решил перестраховаться
        Ответить
        • пруф?
          Ответить
          • курите маны, недоверчивый вы наш )
            ладно, так и быть, разжую: http://php.net/manual/en/dir.constants.php
            Ответить
            • появились в 4.3.0))
              тащемто автор и пытается сделать так, что бы код работал до этой константы

              чем надо думать что бы 7 лет не вводить в кросс-платформенный язык файлсепаратор -- мне не ведомо
              Ответить
              • то есть уже сто лет как. потому я и спросил http://govnokod.ru/4820#comment55422
                Ответить
      • На DIRECTORY_SEPARATOR совсем что ли внимание не обратил?!
        В том то и гавно, что этот оператор if не выполнится вовсе!
        Ответить
        • а в php3?
          Ответить
          • php3 устарел уж давно.
            Ответить
            • DOS тоже устарел, но это не значит, что им никто не пользуется.
              Ответить
              • да, пенсионный фонд например)
                он пишет 16ти разрядные приложения, которые соединяются с сервером через модем, а модемом -- через ком порт напрямую.
                а печатают через LPT.

                на винде соответственно надо делать net use.

                такие вот нанотехнологии в нашем сколково в 2010 г))
                Ответить
              • В путь дорогу, 21-й век уже!
                Ответить
    • Вы видели веб-сервер с PHP3 на Mac OS Classic?
      Ответить
    • vanished
      Ответить

    Добавить комментарий