ребзя, а есть какие-то сервисы/скрипты/тулзени чтоб скормить им папку с проектом, а оно в ответ мне выдаст минимально необходимую версию похапэ?

покатит ли скрипт на пхп4 или надо 5 я и сам могу сказать, мне бы что-то, что выяснило требования по 5.2/5.3 релизам.

Closure / Паранормальное

22 Responses to Версия php

  1. Ylfer:

    Веб-сервер тебе чем не тулзень?

    > скормить им папку с проектом, а оно в ответ мне выдаст

    …ошибки, если версия используемого интерпретатора не соответствует замыслам разработчиков либо успешно выполнит, если всё ок.

    Странная потребность, расскажи, на почве чего она возникла.

  2. 01pSpb:

    Объясни, нахуя ставить старые релизы? Ставь вообще 5.4 и не еби голову — на нем все будет работать, разве что стриктами и нотисами сыпать. Тут дело еще и в производительности — 5.2 очень отсасывает у 5.3, например, во многих вещах (думаю, сам знаешь). Так зачем искусственно себя ограничивать?
    Очень странный вопрос.

  3. WebDev:

    может у него есть сборная солянка и он хочет выкатить требования к хостингу, если хостинг не свой

  4. 01pSpb:

    Stephan-V: а о чем тут говорить — ставьте последнюю релизную версию пхп и не ебите голову, какие тут требования иные могут быть? Даже если сейчас код обходится 5.2 (пизда-пизда, огорчение), то не факт, что в будущем не придут нормальные разработчики и не захотят юзать современные фичи языка.

  5. AmtEkb:

    новые релизы накладывают новые ограничения, как-то: необходимость указывать тайм-зону по умолчанию, деприкейтность некоторых функций и т.д. 5.3 же был в некоторых смыслах знаковым релизом, и если я не ошибаюсь, вообще позиционировался как начало перехода на 6.0 и тестовая площадка для его (6.0) фич. И в нём произошли значимые изменения. Так что не факт, что проект для 5.2 будет полностью корректно работать в 5.3 и выше.

  6. 01pSpb:

    факт, однозначно будет. Или, по-твоему, мейнтейнеры совсем ебанаты и не держат обратную совместимость?

  7. AmtEkb:

    в некоторых случаях не держат. Не в переходе 5.2 —> 5.3, конечно, но вообще бывает.
    Лень копаться и искаться примеры — возможно 5.2 и 5.3 полностью совместимы, не помню.

  8. SkoLt:

    она возникла на почве того, что я говорил в посте «чо делать, если жуткий говнокод». имеется сатец, на чужом хостинге. он написан жутчайше криво и крутится в данный момент на 5.2.14. я стянул его на свою машину, где 5.3.9 и начал понемну что-то делать. закинул на сервак — оно мне фэйл, что DateTime::diff, который я заюзал, появился только в 5.3.
    Контакты чувака, на сервере которого это крутится у меня есть, я ему писал письма и просил хотя бы 5.3 включить, но он тугой, как лук Робин Гуда и вот уже вторую неделю никаких ответов от него. А я привык себе на нормальном 5.3 писать. Вот и приходится перед каждым коммитом смотреть в diff-ах ООП-шного я заюзал и глядеть его требования.

  9. SkoLt:

    вот как раз такая ситуация и есть. у меня вопрос не в том, какую минимальную версию ставить для нового проекта — тут само собой 5.4. Вопрос в том, покатит ли то, что я весь такой модный понаписывал с неймспейсами и замыканиями в существующем проекте на существующем серваке под дремучим 5.2.14.

  10. SkoLt:

    под 5.3 вроде исполнится любой код, который исполнялся на 5.2. ну, или 99,9%. но я пляшу от обратного. есть хостинг (не мой, я просто разместил объяву) с 5.2.14 и если я к проекту прикручу Twig и какие-то куски от Zend’а или Symfony2, то мне надо как-то узнавать что из этого не будет работать. Причем желательно узнавать не из еррор-логов сервака, а раньше.

  11. AmtEkb:

    почему бы тебе не поднять виртуалку с тестовым веб-серваком, аналогичным боевому?

  12. NgeBlank:

    «под 5.3 вроде исполнится любой код, который исполнялся на 5.2. ну, или 99,9%»

    Увы, не любой. Сходу — уже упомянули про date_default_timezone_set(), еще поменялось поведение is_a(), например, и если код написан так, чтобы реагировать на E_STRICT, то работать перестанет.

    Код 5.2 будет исполняться если автор его сначала хорошо думал, а потом хорошо проверял.

  13. 01pSpb:

    один раз прописать в php.ini дефолтную таймзону — это проблема?

  14. Kkebad:

    у меня как-то год назад товарищ попросил разобраться, почему у него тема для вордпресса белый экран выдает. логов то ли не было, то ли в них тишина была… выяснилось, что каким-то невероятным образом его аккаунт поселили на сервак с PHP 4, в резервацию.

  15. SkoLt:

    автор того кода, который мне приходится поддерживать, судя по всему, приверженец мнения «пусть лошади думают, у них головы большие»

  16. NgeBlank:

    я сказал, что это проблема?

  17. Xuagreen:

    ты не поверишь… В итоге прописал в конфиг date_default_timezone_set() (:

  18. 01pSpb:

    то есть у тебя десяток сайтов на серваке и во фронт-контроллере каждого у тебя date_default_timezone_set()? Охуенное эстонское решение! Иди шпротов мне накопти лучше, у меня банка заканчивается.

  19. Xuagreen:

    это один проект на одном сервере, админы которого PHP видят впервые в жизни (тяжёлая жизнь админов с Java инфраструктурой). А конфиг у меня один, туда и всунул. Так что поебать полностью.

  20. OkkGood:

    Может проще переписать код, и вместо DateTime использовать функции?

  21. SkoLt:

    я даже затрудняюсь ответить ибо
    1. вопрос не только в DateTime, а в теоретической возможности писать что-то. Завтра вот мне понадобится SOAP. мне брать готовую зендовую реализацию или писать свои кривые грабли под 5.2?
    2. переписать всегда кажется проще, но никто не согласен платить за это
    3. это себе сложно представить, но человек, который писал до меня этот проект даже не удосужился написать обёртку для mysql. и я имею тысячи вызовов mysql_fetch_row по проекту. аналогично со строками — нужно знать день недели конкретной даты — date(«w», mktime(0, 0, 0, substr($date, 4, 2), substr($date, 6, 2), substr($date, 0, 4))); и так везде и во всём. нет функции getDayOfWeek($date) — везде, блять, вот такая вот инлайн-компиляция даты. если что-то менять — это менять надо везде (то есть в каждом отдельно взятом месте) по проекту.
    4. переписать проще только на первый взгляд. ибо некоторые куски кода говорят о том, что на их понимание уйдет дохуя времени. в десятки раз больше, чем на переписывание. но согласно пункту 3 они никак не выносятся в функции и потому надо читать каждый индивидуально.

    извини, бро, что такая простынка, но из-за таких пидарасов, как этот мой писака, я на простую задачу с прогнозируемым временем реализации, бывает, трачу времени в три раза больше только из-за того, что этот гандон поленился скачать самый примитивный учебник по программированию.

  22. OkkGood:

    я тебя понял.

    Тогда ой, действительно для всех будет проще либо сменить хостинг, либо связаться с хостерами и попросить их проапгрейдить софт

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