uz
Feedback
PHP задачи с собеседований

PHP задачи с собеседований

Kanalga Telegram’da o‘tish

Задачи, тесты и теоретические вопросы по PHP. Прислать задачу/вопрос в дар: @cyberJohnny Сотрудничество: @cyberJohnny

Ko'proq ko'rsatish
2 905
Obunachilar
-224 soatlar
-17 kunlar
-1330 kunlar
Postlar arxiv
🔵 Научитесь создавать сложные масштабируемые системы на платформе 1С! В OTUS стартует новый поток онлайн-курса «Архитектор 1
🔵 Научитесь создавать сложные масштабируемые системы на платформе 1С! В OTUS стартует новый поток онлайн-курса «Архитектор 1С», где вы научитесь проектировать информационные системы, используя продвинутые возможности платформы 1С. 4 месяца обучения и вы сможете: ▫️ Формировать архитектуру окружения 1С, ▫️ Моделировать бизнес-процессы и создавать прототипы разработки ▫️ Проектировать технические проекты в СППР ▫️ Работать с Git, OneScript, Vanessa, SonarCube, Apdex, Grafana ▫️ Устанавливать и настраивать РИБ А еще узнаете, как организовать работу отдела разработки 1С, какие есть виды документации в 1С и какие организационные мероприятия существуют в 1С. ➡️ Тест по архитектуре 1C. Готовы ли вы к обучению на курсе «Архитектор 1С»: https://clck.ru/3Cs7bu Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

❓ Какие паттерны нужно знать разработчикам? Один из них — паттерн Iterator. ☄️Именно его мы разберем 26 августа в 20:00 мск н
❓ Какие паттерны нужно знать разработчикам? Один из них — паттерн Iterator. ☄️Именно его мы разберем 26 августа в 20:00 мск на открытом уроке, который пройдет в преддверии старта онлайн-курса «Архитектура и шаблоны проектирования» в OTUS. 📚На занятии со старшим разработчиком Андреем Поляковым, вы узнаете: - Что из себя представляет подход Data Streams - Как принцип инверсии зависимостей (dependency inversion principle, DIP) используется для получения паттерна Iterator - Как применяется принцип инверсии зависимостей для получения повторно используемых алгоритмов над коллекциями объектов. - Почему стоит избавляться от циклов при работе с коллекциями После вебинара «Паттерн Iterator: от применения принципа DIP до Data Streams» вы сможете продолжить обучение на курсе. ➡️Регистрируйтесь прямо сейчас, чтобы не пропустить занятие: https://clck.ru/3CqtLU Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Ошибка при отправке event через Pusher : local.ERROR: Pusher error: cURL error 7: Failed to connect to localhost port 8080 after 0 ms: Отправляю event тестовый на фронт <?php namespace App\Events; use Illuminate\Broadcasting\Channel; use Illuminate\Queue\SerializesModels; use Illuminate\Foundation\Events\Dispatchable; use Illuminate\Broadcasting\InteractsWithSockets; use Illuminate\Contracts\Broadcasting\ShouldBroadcast; class MyEvent implements ShouldBroadcast { use Dispatchable, InteractsWithSockets, SerializesModels; public $message; public function __construct($message) { $this->message = $message; } public function broadcastOn() { return new Channel('my-channel'); } public function broadcastAs() { return 'my-event'; } } вот сам event <?php namespace App\Http\Controllers; use App\Events\MyEvent; use App\Events\TestEvent; use Illuminate\Http\Request; class TestEventController extends Controller { public function sendTestEvent(Request $request) { event(new TestEvent('Привет, это тестовое сообщение!')); return response()->json(['status' => 'Событие отправлено']); } } контролер Запускаю потом очереди и в логах дает ошибку [2024-08-09 15:23:37] local.ERROR: Pusher error: cURL error 7: Failed to connect to localhost port 8080 after 0 ms: Could not connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for http://localhost:8080/apps/838075/events?auth_key=cnppbxcgb0mhtfhieve4&auth_timestamp=1723217017&auth_version=1.0&body_md5=d32cd63fe1ba7f01b6756da9017f0f0d&auth_signature=1b2c3647055a9eed651c64b351c728d20a6e3d9b64ca07377dc93a900f85d6d4. {"exception":"[object] (Illuminate\\Broadcasting\\BroadcastException(code: 0): Pusher error: cURL error 7: Failed to connect to localhost port 8080 after 0 ms: Could not connect to server (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for http://localhost:8080/apps/838075/events?auth_key=cnppbxcgb0mhtfhieve4&auth_timestamp=1723217017&auth_version=1.0&body_md5=d32cd63fe1ba7f01b6756da9017f0f0d&auth_signature=1b2c3647055a9eed651c64b351c728d20a6e3d9b64ca07377dc93a900f85d6d4. at /Users/ruslantasmetov/pulsbackend/pulsebackend/vendor/laravel/framework/src/Illuminate/Broadcasting/Broadcasters/PusherBroadcaster.php:164) [stacktrace] Может кто сталкивался , использую laravel 11

PHP Телеграм АПИ Получить посты с количеством просмотров не могу никак найти информацию как получить посты и количество просмотров через PHP Сейчас публикую посты с помощью CURL: function sendTelegram($method, $response) { $ch = curl_init('https://api.telegram.org/bot' . TOKEN . '/' . $method); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $response); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HEADER, false); $res = curl_exec($ch); curl_close($ch); return $res; } $resulttg = sendTelegram( 'sendPhoto', array( 'chat_id' => $telegramchatid, 'caption' => $message, 'photo' => $photofortg, 'parse_mode' => 'HTML', 'reply_markup' => json_encode(array('inline_keyboard' => $keyboardtg)) ) ); тем самым я публикую фото с комментарием методом sendPhoto не могу найти как обойти канал и просмотреть посты с количеством просмотров.

Запрос MYSQL из цикла в 1 запрос. Как и стоит ли? Есть код: for ($i = 0; $i < count($array_tip); $i++) { $sql = "SELECT * FROM reestr WHERE tip LIKE '%$array_tip[$i]%' ORDER BY date DESC LIMIT 1"; $res = $conn->query($sql); $numb_rows = $res->num_rows; if (!$res) { echo 'Не удалось подключиться к базе планов!'; } else { if ($numb_rows == '0') { $dateValueLast = '0'; } else { while ($row0 = $res->fetch_assoc()) { $dateValueLast = $row0('date'); } } $lastDateTip[] = $dateValueLast; } } Есть 5 типов (отделов), в цикле запрашивается максимальная дата для каждого. Например, для 1 отдела последней датой окажется 10 августа, для 2 отдела - 13 августа и т.п. Как сделать этот запрос без цикла? Вложенные запросы не поддерживают LIMIT, поэтому запрос выдаёт все записи (MAX(date) не работает). Есть ли смысл объединить этот запрос в 1 для оптимизации и ускорения загрузки?

Не знаете, как эффективно управлять конфигурацией и обеспечивать консенсус данных? Ваши проекты сталкиваются с проблемами мас
Не знаете, как эффективно управлять конфигурацией и обеспечивать консенсус данных? Ваши проекты сталкиваются с проблемами масштабируемости и надежности? Тогда присоединяйтесь к открытому вебинару 21 августа в 20:00 мск, где мы: 1. Рассмотрим основы и архитектуру Apache Zookeeper: алгоритмы обеспечения консенсуса данных (Zookeeper Atomic Broadcast с Paxos) 2. Узнаем, как Zookeeper обеспечивает координацию и синхронизацию в распределенных системах 3. Разберём методы настройки и администрирования Zookeeper 👨‍💻🛠👨🏻‍💻 Урок будет полезен разработчикам, DevOps-инженерам, администраторам систем и сетей, архитекторам ПО и всем, кто хочет глубже понять работу Apache Zookeeper. 🔴 Запишитесь прямо сейчас, чтобы не пропустить мероприятие: https://clck.ru/3CjTwr Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

Добраться до текущего соединения Для реализации http-метода CONNECT мне надо переслать все дальнейшие данные этого соединения в другой сокет. Хотел прочитать из php://input, но там пусто, поскольку connect-запрос не имеет тела. Мне надо каким-то образом добраться до tcp-сокета текущего http-запроса и потоково читать данные из него. Как это сделать?

❓Вопрос от пользователя Не работает AccessControl на самописные роли RBAC в фреймворке YII2 Совсем новичок в yii2, пишу свой первый сайт. Я написал RBAC контроллер, написал нужные роли, правила и разрешения. Возникла проблема на моменте создания поведения для User контроллера: в behaviors() добавил AccessControl и прописал нужные доступы. Однако фильтр не пропускает самописные роли (user, admin). Пожалуйста, подскажите в чём проблема? Спасибо! Код RBAC контроллера: class RbacController extends Controller { public function actionInit() { $authManager = \Yii::$app->authManager; // Create roles $guest = $authManager->createRole('guest'); $user = $authManager->createRole('user'); $admin = $authManager->createRole('admin'); // Create simple, based on action{$NAME} permissions $signin = $authManager->createPermission('/user/signin'); $logout = $authManager->createPermission('/user/logout'); $signUp = $authManager->createPermission('/user/signup'); $index = $authManager->createPermission('/user/index'); $history = $authManager->createPermission('/user/history'); $profile = $authManager->createPermission('/user/profile'); $usersList = $authManager->createPermission('/user/userlist'); // Add permissions in Yii::$app->authManager $authManager->add($signin); $authManager->add($logout); $authManager->add($signUp); $authManager->add($index); $authManager->add($history); $authManager->add($profile); $authManager->add($usersList); // Add rule, based on UserExt->group === $user->group $userGroupRule = new UserGroupRule(); $authManager->add($userGroupRule); // Add rule "UserGroupRule" in roles $guest->ruleName = $userGroupRule->name; $user->ruleName = $userGroupRule->name; $admin->ruleName = $userGroupRule->name; // Add roles in Yii::$app->authManager $authManager->add($guest); $authManager->add($user); $authManager->add($admin); // Add permission-per-role in Yii::$app->authManager // Guest $authManager->addChild($guest, $signin); $authManager->addChild($guest, $signUp); $authManager->addChild($guest, $index); // user $authManager->addChild($user, $profile); $authManager->addChild($user, $history); $authManager->addChild($user, $guest); // Admin $authManager->addChild($admin, $usersList); $authManager->addChild($admin, $user); } } Код behaviors() User контроллера public function behaviors() { return [ 'access' => [ 'class' => AccessControl::class, 'denyCallback' => function() { if(Yii::$app->user->isGuest) return $this->redirect('signin'); throw new ForbiddenHttpException('У вас нет доступа к этой странице'); }, 'only' => [], 'rules' => [ [ 'allow' => true, 'actions' => ['signin', 'signup'], 'roles' => ['?'], ], [ 'allow' => true, 'actions' => ['logout', 'profile', 'history'], 'roles' => ['user'], ], [ 'allow' => true, 'actions' => ['userlist'], 'roles' => ['admin'], ] ], ], ]; }

😊 Ваш интернет-магазин на 1С-Битрикс нуждается в улучшении? Вам надоело вручную передавать данные между системами? Хотите ав
😊 Ваш интернет-магазин на 1С-Битрикс нуждается в улучшении? Вам надоело вручную передавать данные между системами? Хотите автоматизировать процессы и повысить эффективность работы? На открытом вебинаре «Интеграция коробочной версии Битрикс 24 и 1С Битрикс» 21 августа в 20:00 мск мы разберём всё, что нужно знать для успешной интеграции. Вы узнаете: - как зарегистрировать пользователя в интернет-магазине 1С-Битрикс; - как формировать и обрабатывать заказы; - как создать входящий веб-хук и передавать данные о новом покупателе в Битрикс24; - как создать исходящий веб-хук для передачи данных о сделках и приобретённых товарах обратно на сайт; - как заполнить каталог товаров данными из CSV-файла с помощью Битрикс API; - как настроить начальное оформление чертежей. 👉 Регистрируйтесь прямо сейчас и узнайте, как сделать процессы более эффективными и автоматизированными: https://clck.ru/3CVWj6 Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Не понимаете, какую роль играет архитектор 1С и почему его участие в проекте так важно? Хорошие новости! Всего за пару часов
Не понимаете, какую роль играет архитектор 1С и почему его участие в проекте так важно? Хорошие новости! Всего за пару часов вы узнаете: - как архитектор 1С взаимодействует с командой и заказчиком; - влияние архитектора 1С на проект; - можно ли обойтись без него; - как получить пользу от взаимодействия с архитектором 1С и как ему поддерживать свою ценность; - как построить процессы команды с участием архитектора и при его отсутствии. Присоединяйтесь к открытому вебинару 20 августа в 19:00 мск и сделайте этот прыжок в будущее! Урок будет полезен разработчикам 1С, администраторам баз данных 1С и аналитикам 1С. Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://clck.ru/3CR5SJ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

🎯 Не упустите возможность посетить открытый урок по работе с CMS 1С-Битрикс! На уроке мы рассмотрим информационные блоки в Б
🎯 Не упустите возможность посетить открытый урок по работе с CMS 1С-Битрикс! На уроке мы рассмотрим информационные блоки в Битрикс и создадим инфоблок «Каталог товаров». Вы сможете задать свойства для товаров, а затем заполнить каталог данными из файла CSV, используя API Битрикс. Также мы обсудим начальную настройку оформления чертежей. Ждём вас 8 августа в 20:00 20:00 (мск). ➡️ Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://clck.ru/3CMfni Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Сотрудник перешёл по подозрительной ссылке и теперь вся компания страдает от вируса-шифровальщика или вируса-шпиона. Знакомая
Сотрудник перешёл по подозрительной ссылке и теперь вся компания страдает от вируса-шифровальщика или вируса-шпиона. Знакомая ситуация? А теперь представьте, что ваши сотрудники больше никогда не попадают в ловушки фишинга. Хотите это реализовать? Присоединяйтесь к открытому вебинару 8 августа в 20:00 мск и узнайте, как именно предотвратить киберугрозы! Мы расскажем, почему люди до сих пор переходят по фишинговым ссылкам, почему важно обучать сотрудников кибербезопасности и как простыми словами объяснить им важность защиты данных. Вы также узнаете, как взращивать киберкультуру в вашей компании. На вебинаре выступят: - Сергей Терёшин, руководитель курсов «Внедрение и работа в Devsecops» и «ИБ. Professional» - Алексей Горелкин, CEO компании Phishman™ Регистрируйтесь прямо сейчас: https://clck.ru/3CLXz6 Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

❓Вопрос от пользователя Удаление товара YITH Wishlist Возникла проблема в удалении товара из "Избранных" с помощью плагина YITH Wishlist Файл content-product.php
<?php if(YITH_WCWL()->is_product_in_wishlist($product->get_ID())):?>
            <a href="<?php echo esc_url( wp_nonce_url( add_query_arg( 'remove_from_wishlist', $product->get_ID(), $base_url ), 'remove_from_wishlist' ) ); ?>"
                class="delete_item <?php echo esc_attr( $link_classes ); ?> card__favorite card__favorite_set"
                data-item-id="<?php echo esc_attr( $found_item->get_id() ); ?>"
                data-product-id="<?php echo esc_attr( $product_id ); ?>"
                data-original-product-id="<?php echo esc_attr( $parent_product_id ); ?>"
                data-title="<?php echo esc_attr( apply_filters( 'yith_wcwl_add_to_wishlist_title', $label ) ); ?>"
                rel="nofollow">
                <svg>
                    <use xlink:href="#icon-favorite"></use>
                </svg>
            </a>
            <?php else: ?>
            <a href="<?php echo esc_url( wp_nonce_url( add_query_arg( 'add_to_wishlist', $product->get_ID(), $base_url ), 'add_to_wishlist' ) ); ?>"
                class="<?php echo esc_attr( $link_classes ); ?> card__favorite yith-wcwl-add-button"
                data-product-id="<?php echo esc_attr( $product_id ); ?>"
                data-product-type="<?php echo esc_attr( $product_type ); ?>"
                data-original-product-id="<?php echo esc_attr( $parent_product_id ); ?>"
                data-title="<?php echo esc_attr( apply_filters( 'yith_wcwl_add_to_wishlist_title', $label ) ); ?>"
                rel="nofollow">
                <svg>
                    <use xlink:href="#icon-favorite"></use>
                </svg>
            </a>
            <?php endif; ?>
Ругается на $found_item->get_id(), так как она не определена. Как ее получить? Спасибо! PHP задачи с собеседований

🎯 Тест на знание PHP+Symfony 🎯 📚 Пройди тест и получи доступ к 22 открытым урокам. 🕗 Два открытых урока можно посмотреть
🎯 Тест на знание PHP+Symfony 🎯 📚 Пройди тест и получи доступ к 22 открытым урокам. 🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Symfony Framework» от OTUS необходимо пройти входное тестирование: ответить на 20 вопросов и уложиться в тайминг. Этот курс идеально подходит для любых PHP-разработчиков, стремящихся поднять свой профессиональный уровень до Middle+ или Senior+ и работать в крупных проектах. ➡️ ПРОЙТИ ТЕСТ:  https://clck.ru/3CG4Dn Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576

🤘 Пройди хардкорный тест по JavaScript+Angular ✔️ Ответь на 20 вопросов и проверь свои знания. Сможешь сдать — пройдёшь на п
🤘 Пройди хардкорный тест по JavaScript+Angular ✔️ Ответь на 20 вопросов и проверь свои знания. Сможешь сдать — пройдёшь на продвинутый курс "Angular Developer". ⛔️ТЕСТ СМОГЛИ ПРОЙТИ ТОЛЬКО 40% УЧАСТНИКОВ ⏰ Время прохождения теста ограничено 25 минут ✍️ПРОЙТИ ТЕСТ: https://clck.ru/3CFTsP 💣 Пройдете тест и получите: ✔️ Живое общение с экспертами ✔️ Лучшие открытые уроки прошлых наборов курса ✔️ Продвинутые темы и практика на «боевых» задачах уровня Middle+ ✔️ Скидку на прохождение онлайн курса «Angular Developer» Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

😄 Создание и настройка каталога товаров в CMS 1С-Битрикс Ждем вас на открытом уроке, где мы: - рассмотрим информационные бло
😄 Создание и настройка каталога товаров в CMS 1С-Битрикс Ждем вас на открытом уроке, где мы: - рассмотрим информационные блоки в Битрикс; - создадим и настроим инфоблок «каталог товаров»; - создадим свойства для товаров; - заполним каталог товаров данными из CSV-файла, используя Битрикс API; - разберем начальную настройку оформления чертежей. Встречаемся 8 августа в 20:00 мск. 👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://clck.ru/3CEyzz Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

laravel ui auth login перенаправляет на другую страницу после входа и обратно Мой проект лежит на гитхабе. Я его скачиваю на
laravel ui auth login перенаправляет на другую страницу после входа и обратно Мой проект лежит на гитхабе. Я его скачиваю на другую машину. Выполняю composer install, проект дополнен необходимыми файлами, запускаю php artisan serve. На странице /login после входа (испльзуется стандартный auth/ui) должен перенаправлять на /home, но после перенаправления, судя по Inspect из хрома, он снова возвращается на страницу /login. Идет login 302, home 302 и возврат на login с 200. В чем может быть дело? При каждом обновлении страницы обновляется и сессия, может в этом дело. В настройках стоит время сессии 120, сессия использует файловую систему. Laravel 10.29

🦾 Создание и настройка каталога товаров в CMS 1С-Битрикс Ждем вас на открытом уроке, где мы: - рассмотрим информационные бло
🦾 Создание и настройка каталога товаров в CMS 1С-Битрикс Ждем вас на открытом уроке, где мы: - рассмотрим информационные блоки в Битрикс; - создадим и настроим инфоблок «каталог товаров»; - создадим свойства для товаров; - заполним каталог товаров данными из CSV-файла, используя Битрикс API; - разберем начальную настройку оформления чертежей. Встречаемся 8 августа в 20:00 мск. 👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://clck.ru/3CBZqg 🎫 Начните обучение со скидкой в 10%, действует до конца июля. Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru

Как и какими средствами находить ошибки в PHP коде?