• Как вывести определенный текст из памяти (php)?

    MaEcTPo
    @MaEcTPo
    Как можно вообще тратить своё время, чтобы задавать такие вопросы?
    Из памяти! Это "из значения переменной/массива", а не из памяти!
    $testString = '/index.php?route=product/category&path=60';
    parse_str(parse_url($testString, PHP_URL_QUERY), $params);
    print_r($params);


    Вывод:
    Array
    (
        [route] => product/category
        [path] => 60
    )
    Ответ написан
    4 комментария
  • Почему после обновления большого JS файла nginx отдает его с ошибками?

    MaEcTPo
    @MaEcTPo
    Я с этой проблемой столкнулся.
    В интернетах сетуют на то, что проблема с vboxfs, и что-бы всё заработало необходимо отключить директиву sendfile в nginx, в секции http в файле `/etc/nginx/nginx.conf`

    http {
      sendfile off;
    }


    Все отписываются и говорят что работает. У меня не заработало, но, видимо, где-то с конфигами что-то другое у меня.
    Потому я перешёл на апач для разработки в связке с докером и там всё завелось с первого раза.

    Ссылки по теме:
    Дока у вагранта
    Более подробней на stackoverflow
    Чуть больше объяснения
    Ответ написан
    1 комментарий
  • Сайт php + AJAX, приехали?

    MaEcTPo
    @MaEcTPo
    Конкретно с этим кодом, с минимальными затратами времени я бы сделал следующее:

    1. В функциях я оставил бы только формирование массивов данных. Переименовал бы их в `get_news()`, `get_news_menu()`. Они бы возвращали только массивы данных, например:
    $news = [
        0 => [
            'photo' => 'photoValue',
            'title'    => 'Title Value',
            'description' => 'Some long Description',
        ],
        1 => [
            'photo' => 'photoValue',
            'title'    => 'Title Value',
            'description' => 'Some long Description',
        ],
    ];


    С меню так же - возвращаете массив, только вместо photo, title, description уже будут url, title, что-то ещё.

    2. Всю HTML-разметку можно вынести в отдельный файл, например, который в данном случае подключить при помощи include(). Но это особо не повлияет на качество кода :)
    Саму разметку уже делать подобным способом, на примере с меню:

    <div class="card" style="height: 30px;">
        <?php foreach (get_menu_items() as $menuItem) : ?>
            <a href="<?= $menuItem['url'] ?>"><?= $menuItem['title'] ?></a>
        <?php endforeach; ?>
    </div>


    Потом, с опытом, придёт понимание того, что некоторые части повторяются и их можно и нужно выносить в отдельные блоки (Twig), паршалы (symfony1, zend1).

    3. Относительно аякса, то ничто вам не мешает, если это аякс возвращать на клиент json структуры ваших новостей, который клиент уже будет рендерить так, как пожелает. А на сервере это всего лишь `json_encode(get_news());` отправить в браузер.

    P.S. мог допустить синтаксических ошибок, так как в IDE не проверял. Надеюсь, что помог.
    Ответ написан
    5 комментариев
  • Как правильно записать и в дальнейшем работать с датой?

    MaEcTPo
    @MaEcTPo
    Если в БД тип `datetime`, то я бы предложил оперировать датой как объектом \DateTime().
    Чтобы создать объект, можно воспользоваться методом createFromFormat()

    Чтобы потом записать, использовать стандартные константы:
    $dateTime = new DateTime() // создаст объект со текущим временем
    echo $dateTime->format(\DateTime::ATOM) // покажет дату в формате, необходимом для базы данных.
    echo $dateTime->format('Y-m-d H:i:s'); // упрощённый формат.


    Больше можно узнать по ссылке на документацию по методу format()

    P.S. Из формулировки вашего вопроса не совсем понятно, на что именно вы хотите получить ответ. Перечитывайте вопросы перед отправкой, расставляйте запятые и формулируйте вопрос чётко и ясно.
    Ответ написан
    Комментировать
  • Посоветуйте приложение для учета финансов

    MaEcTPo
    @MaEcTPo
    Раньше использовал 4конверта. Но он не развивается, ничего нового не добавляется и нет поддержки мобильных устройств, что довольно критично.
    Совсем недавно нашлась замена.
    Искал долго, ведь я хотел не просто вести лог транзакций, но и планировать и совершать покупки учитывая планы. Нужно было бюджетирование.
    И вот что нашел:

    You Need a Budget

    Купил на скидке в стиме. Сейчас не могу нарадоваться. Не хватает мультивалютности, разве что. Об этом ведут разговоры, но пока не очень там все солнечно и ясно с этой фичей.
    Ответ написан
  • С чего начать создание интернет-магазина?

    MaEcTPo
    @MaEcTPo
    1) Самописные движки хорошо, но для этого надо держать комманду программистов, да и написать функциональный вэб-магазин за пару часов не получится. Но, как сказал предыдущий человек — зависит от потребностей.
    Мы сейчас взялись переносить магазинчик как раз на готовый движок. Выбрали Magento, но не знаю на сколько правильным был выбор, т.к. с нуля в нем довольно тяжело разобраться. Но программистам знакомым с этим натянуть дизайн — не очень то сложно.
    OSCommerce лучше даже не смотреть — система старая, код написан плохо, довольно много багов может вылазить.
    На хабре можно поискать обзор уже готовых решений.\

    2) По ценам — от нуля, если взять уже готовые шкурки и натянуть на готовый движок, до «сколько не жалко».
    Ответ написан
    Комментировать