Профиль пользователя заблокирован сроком с 25 августа 2021 г. и навсегда по причине: см. п. 6.4 и 6.6 правил сервиса
  • Для отправки сообщение боту нужен ли ssl?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Ты всегда обязан ставить шифрование первым делом для любого хостинга, для апишки телеграм-бота с использованием вебхука обязательно SSL нужен. Устанавливается бесплатно Let's Encrypt за 5 минут.
    Ответ написан
    Комментировать
  • Как исправить проблему с CORS разных доменов Laravel 8/Vue при запросах?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Корс всегда будет ошибку показывать, если с одного на другой домен пытаешься js-запрос сделать, а не только для локалхоста.
    Поставь расширение для браузера, например Cross Domain - CORS и выруби там. Для локалки-дева пойдёт, для прода над настраивать в серваке Access-Control-Allow-Origin: *
    Ответ написан
  • Как не попадать на исключения при returned NULL?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Проверки вводи и всё, хош в php, хош в твиге и не будут ошибки вылетать
    $test = $this->em->getRepository(Test::class)->findOneBy(['test' => $test]);
    
    if (!empty($test)) {
       $name = $test->getName();
       $surname = $test->getSurname();
    }
    
    return $this->render('test/index.html.twig', [
       'test' => $test,
       'name' => $name ?? null,
       'surname' => $surname ?? null
    ]);
    
    // в твиге
    {% if test is not null %}
       <div>{{ test.name }}</div>
       <div>{{ test.surname }}</div>
    {% endif %}
    Ответ написан
  • Как правильно вывести foreach в php?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Удали эту хрень и нормальную структуру данных сделай в один массив, а не по разным массивам распихивай. Перебираешь форичем и по ключу подставляешь.
    $array = [
         0 => [
            'name' => 'Алексей',
            'surname' => 'Петреченко',
            'photo' => 'путь'
         ],
         1 => [
            'name' => 'Саша',
            'surname' => 'Васильченко',
            'photo' => 'путь'
         ]
    ];
    
    foreach($array as $item) {
       echo $item['name'];
       echo $item['photo'];
    }
    Ответ написан
    Комментировать
  • Стоит ли учить php в 2021 году для разработки web приложений и сайтов?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Многие хейтят Php, что он медленный, старый, много утечек памяти, нет нормальной асинхронности

    Та те хейтеры - студенто-школьники, которые один раз хелоуворлд написали прям в одном файле на 2м курсе не дойдя даже до ООП.

    Конечно учи, если тянет в бэкенд веба, хороший язык для старта. Проектов хороших и новых куча, денег куча, работы куча(в том числе удалённой!), решений куча. Язык быстрый, любые задачи решает, асинхронность прикручивается, всё что душе угодно. Реально очень востребованный язык, никуда он не умирает и вакансий меньше не становится.
    То есть это не тот язык, где страшно за будущее пока учишь его. С PHP ты всегда найдёшь первую работу. Личное имхо - только в CMS не лезь, иди по пути фреймворков, ООП, паттернов, SOLID, хорошего бэкенда в общем. Удачи!
    Ответ написан
  • Как вытащить все записи из базы за последние 30 секунд с учетом ID юзера?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Выполни запрос SELECT NOW(); и сравни с временем последних записей, а то может создаёшь с одной датой/часовым поясом, а now() другую дату выдаёт? И проверить те ли столбцы нужны в запросе)
    Ответ написан
    Комментировать
  • Php puppeteer, как получить HXR?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Ну сам скриншот делается?
    Ты делаешь аякс-запрос в бэк, бэк делает скрин, выводишь скрин в нужном формате в респонс с контроллера. На каком месте проблема?
    Ответ написан
  • Можно ли через foreach перебирать объект класса?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Да. Переберёт все публичные свойства.
    А если надо ещё и протектед/приватные, то просто создай внутри класса метод с перебором всех свойств:

    <?php
    class MyClass
    {
        public $public = 'значение 1';
        protected $protected = 'защищённая переменная';
        private $private   = 'закрытая переменная';
    
        public function iterateAll() {
           foreach ($this as $key => $value) {
               print "$key => $value\n";
           }
        }
    }
    
    $class = new MyClass();
    $class->iterateAll();
    Ответ написан
    Комментировать
  • Почему PHP8 требует определять переменные?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Переменная не только должна быть указана, либо заюзана $var ?? null. Она и строгий тип должна иметь, где только возможно)
    И тестами ещё покрыть, каб не прилетало там, где не надо)
    PHP давно вырос уже в довольно серьёзный язык, над пользоваться фичами, конечно зависит от версии пыхи. Строгие типы решают много проблем.

    declare(strict_types = 1);
    
    /** @var array $myArray */
    private array $myArray;
    
    /**
    * @param string $value
    */
    public function(string $value): bool
    {
       return true;
    }
    Ответ написан
    Комментировать
  • Мешает ли факт того, что я лежал в ПНД от военкомата и получил "легкий" диагноз (тревожное РЛ) трудоустройству в it сфере?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    cправки с пнд

    айти


    Ты серьёзно или рофлишь, какие справки?)) Это не заборостроительный завод имени Ленина, здесь вообще ничего не надо, кроме знаний в голове. Это самая прогрессивная, демократичная отрасль. Хоть ты феминистка-трансгендер-веган, это только поддерживается на Западе, лишь бы веслал.
    Коси и не парься, мозгов больше будет.
    Ответ написан
    23 комментария
  • Что изучать дальше в вебе?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Если нравится бэкенд в вебе, то ставишь Убунту какую, изучи PHP хорошенько, поклепай на нём SQL-запросы, освой базовый фронтенд(достаточно до уровня сделать модалку, а там кнопку с ajax-реквестом), потом бери Laravel или Symfony. И поклепай что-то для себя на фреймворке, попутно заливая, изучая git.

    Лучше не занимайся CMSками, на них нищие клиенты обычно сидят, просто банально на нём вряд ли найдёшь крупный, долгий, денежный проект.
    Ответ написан
    Комментировать
  • Как заполнить массив на определённое количество элементов?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Да можешь вообще избавиться от ключа "div", если не нужен он.
    $data = [$div1, $div2, $div3];

    Если нужен, то используй вложенные массивы в массив:
    $data = [['div' => $div1], ['div' => $div2]];

    Потом вывести:
    foreach ($data as $item) {
        echo $item['div'];
    }
    Ответ написан
  • Как запустить файл PHP в ispManager?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Ну самое простое решение, просто зайди в файловый менеджер или ftp там с файлами/папками сайта, забрось этот файл в папку с названием public
    вбей в браузер твойсайт.com/UpdatePriceController.php или твойсайт.com/public/UpdatePriceController.php.
    Возможно там надо смотреть какой путь прописан к price.csv, чтобы скрипт твой проработал файл, смотри куда его положить надо по коду.
    Ответ написан
  • Преобразование строки?

    Nordic_Alf
    @Nordic_Alf
    PHP Developer
    Вообще лучше писать свой разбивальщик-функцию урлов через parse_url(), а потом собирать опять в урл, потому как параметров может быть разное количество, как и пути разные. Но в этом случае можешь и так:
    <?php
    $url = 'https://anvis.iaai.com:443/resizer?imageKeys=29697105~SID~B607~S0~I1~RW2592~H1944~TH0&amp;width=161&amp;height=120';
    $array = explode('&', $url);
    
    array_walk($array, function ($n)  use (&$newUrl) {
        $newUrl .= str_replace("amp;", '', $n) . '&';
    });
    
    var_dump($newUrl);
    Ответ написан
    Комментировать