Перспективы роста

Планируется ли переход на PHP7+?

Планируется ли переход на PDO вместо mysqli?

Планируются ли хоть какие-то качественные изменения?

2 ответа

  • 1
    Алексей Webasyst 16 апреля 2018 14:00 #

    1. Вы можете и сейчас использовать PHP до 7.1
    2. Пока такой информации нет
    3. Немного непонятно какие изменения вы ожидаете т.к. и фреймворк и приложения периодически обновляются.

    • 0
      dez dez 16 апреля 2018 14:50 #

      По 3. наверное имеется в виду, что-то глобальное для шоп скрипта, а не мелкими доработки в основной исправление багов

      • +3
        replicant replicant 16 апреля 2018 15:06 #

        В погоне за глобальным иногда забывается исправление мелких и средних багов, которых порой накапливается немало. В лучшем случае правятся только критические, потому что "народ уже бунтует". Фразы типа "качественные изменения" всегда необходимо тщательно расшифровывать, начиная с вопрошающей стороны.

      • +1
        Алексей Алексей Webasyst 16 апреля 2018 15:06 #

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

        • +1
          dez dez 16 апреля 2018 16:06 #

          серьезно? Я написал вам про баг один 2 ноября 2017 (обращение в тп №1410022) сказали исправите, досей поры не исправили это недоразумение.

    • +1
      Just Krybik Just Krybik 16 апреля 2018 16:23 #

      Какие изменения? Например появление БД, а не набора несвязных табличек ( СУБД MySQL) на давно почившем myIsam. Критично ли это? Нет не критично, но кривые плагины с неприличной стоимостью неплохо косячат в базе, в итоге имею товары не привязанные к категориям.

      Как насчет внедрения системы тестирования? PHPUnit, codexeption? Не не слышали? Как по мне, без тестов вообще нельзя плагины в магазин добавлять.

      • +1
        replicant replicant 16 апреля 2018 16:58 #

        Предлагаете уйти от MySQL в сторону, допустим, PostgreSQL или только хотя бы избавиться от MyISAM?

        По поводу плагинов поддерживаю. Перед попаданием в магазин плагин надо очень тщательно "мучать" всеми способами, чтобы потом не было паники и ужаса.

        • +1

          Вы хотите переложить тестирование сторонних поделок на WA? )))) Думаю, если даже вдруг есть какой-то мизерный шанс на реализацию такого прожекта, то только на коммерческой основе =)

          • +1
            Just Krybik Just Krybik 16 апреля 2018 17:09 #

            Нет не перекладывать, а интегрировать систему тестирования в движок, как например в laravel или yii2. И обязать плагинотворцев покрывать свои творения тестами.


            • +1

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

              Покрытие тестами не гарантирует полного отсутствия ошибок только общие случаи, иначе не было бы у этих фреймворков столько баг репортов.

              Зачастую js часть плагина больше чем php, хотелось бы узнать как Вы предлагаете реализовать тесты для них.

        • +1
          Just Krybik Just Krybik 16 апреля 2018 17:12 #

          Отказываться от MySQL не предлагаю, какую СУБД использовать, наверно, выбирать клиенту. А вот тотальный myIsam это ужас, в 21 то веке (сарказм).

  • 1

    pdo не замена mysqli - использовать его для доступа к мysql базе не лучшая идея, если же речь о каких-то других субд, то адаптер можно написать за пару часов - с этим никаких особых проблем т.к. в запросах мне не встречались такие чисто мysql фишки как триггеры или view.

    • 0
      Just Krybik Just Krybik 16 апреля 2018 15:45 #

      И чем же плох PDO для мускула? А вот подготовленные выражения весьма полезная фича, особенно при обилии однотипных запросов коих в шопскрипте немало.

      Как пример такого обилия:

        725 Query	DESCRIBE wa_app_settings
      		  726 Quit	
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'name' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = 'Москемп'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'name'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'url' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = 'http://moscamp.my/moscamp.xml'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'url'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'product_type' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '35'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'product_type'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'import_categories' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '1'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'import_categories'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'category' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '3'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'category'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'parent_id' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '6244'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'parent_id'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'images' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '3'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'images'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'update_description' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '1'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'update_description'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'price_up' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'price_up'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'product_names' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '1'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'product_names'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'stock' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '2'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'stock'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'automatization' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '1'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'automatization'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'searchindentificator' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'searchindentificator'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'searchcatindentificator' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'searchcatindentificator'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'searchbyname' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'searchbyname'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'searchbysku' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'searchbysku'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'available' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'available'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'duplicate_as_child' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'duplicate_as_child'
      		  725 Query	SELECT * FROM wa_app_settings WHERE `app_id` = 'shop.yml' AND `name` = 'bind_to_profile' LIMIT 1
      		  725 Query	UPDATE wa_app_settings
                         SET `value` = '0'
                         WHERE `app_id` = 'shop.yml' AND `name` = 'bind_to_profile'
      		  725 Quit	
      • +1
        И чем же плох PDO для мускула?

        Работает медленнее, нативные решения всегда быстрее.

        А вот подготовленные выражения весьма полезная фича

        Я разве утверждал обратное?

        Увы, но такие специализированные запросы не сэмулируешь pdo, а webasyst хоть и на словах, но фреймворк, а значит должен поддерживать универсальность.

      • +2

        От тормозов при попеременном UPDATE/SELECT не спасёт ни PDO, ни innodb. :-|

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите