PHP задачи с собеседований
Kanalga Telegram’da o‘tish
Задачи, тесты и теоретические вопросы по PHP. Прислать задачу/вопрос в дар: @cyberJohnny Сотрудничество: @cyberJohnny
Ko'proq ko'rsatish2 906
Obunachilar
-124 soatlar
-17 kunlar
-1030 kunlar
Postlar arxiv
🤬 Хотите расти как PHP-разработчик?
⚡️ Приходите 28 июня в 20:00 на открытый урок «Статические анализаторы кода в PHP» в OTUS.
После урока сможете записаться на онлайн-курса «PHP Developer. Professional» в OTUS.
На занятии мы рассмотрим важный инструмент в мире PHP разработки — статические анализаторы кода. Они помогают разработчикам обнаруживать потенциальные ошибки и улучшать качество своего кода.
На занятии вы узнаете:
— Что такое статические анализаторы
— Какие они бывают
— Как применять статические анализаторы
— Какие могут возникнуть сложности в работе с ними
🔵Урок будет полезен тем, кто хочет узнать, чем статистические анализаторы отличаются друг от друга и выбрать лучший инструмент для своих проектов.
🟠 Продолжить обучение на курсе возможно в рассрочку.
➡️ Регистрация на открытый урок: https://otus.pw/xyAP/
Нативная интеграция. Информация о продукте www.otus.ruАйтишник, изучай новые языки программирования и фреймворки легче и быстрее!
👉Прокачайте свои скиллы на бесплатном вебинаре онлайн-курса «Математика для программистов» 22.06 в 20:00 мск — «Распространенные заблуждения в программировании или чем может помочь математика»: регистрация
На бесплатном вебинаре мы рассмотрим вопросы:
— Почему нельзя использовать глобальные переменные?
— Почему нельзя использовать операторы goto?
— Что такое абстракция, поведение объекта, полиморфизм?
— Что значит принцип открытости-замкнутости, а также ряд других с точки зрения математики, и как это можно использовать в программировании.
Покажем, как математика позволяет давать ответы на довольно запутанные вопросы и улучшать как понимание программирования, так и качество кода.
Нативная интеграция. Информация о продукте www.otus.ru
👨🏻💻 Не получается создать проект на PHP Laravel
При создании проекта на Laravel возникает ошибка:
Problem 1 - laravel/framework[v10.10.0, ..., v10.12.0] require league/flysystem ^3.8.0 -> satisfiable by league/flysystem[3.8.0, ..., 3.15.1]. - league/flysystem[3.3.0, ..., 3.14.0] require league/mime-type-detection ^1.0.0 -> satisfiable by league/mime-type-detection[1.0.0, ..., 1.11.0]. - league/flysystem[3.15.0, ..., 3.15.1] require league/flysystem-local ^3.0.0 -> satisfiable by league/flysystem-local[3.15.0]. - league/mime-type-detection[1.0.0, ..., 1.3.0] require php ^7.2 -> your php version (8.2.6) does not satisfy that requirement. - league/mime-type-detection[1.4.0, ..., 1.11.0] require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension. - league/flysystem-local 3.15.0 require ext-fileinfo * -> it is missing from your system. Install or enable PHP's fileinfo extension. - Root composer.json requires laravel/framework ^10.10 -> satisfiable by laravel/framework[v10.10.0, v10.10.1, v10.11.0, v10.12.0]. To enable extensions, verify that they are enabled in your .ini files: - C:\Program Files\PHP\php.ini You can also run php --ini in a terminal to see which files are used by PHP in CLI mode. Alternatively, you can run Composer with --ignore-platform-req=ext-fileinfo to temporarily ignore these required extensions.Версия PHP: 8.2.6 PHP задачи с собеседований
👨🏻💻 Реальная проблема реального человека
Как здесь правильно исползовать language?
Я новичок здесь и не знаю, почему это показывает, так ☺️
Устарело: создание динамического свойства Language::$languages устарело в C:\xampp\htdocs\test\class.Language.php в строке 8
function detectLanguage()
{
global $DEFAULT_LANGUAGE;
if ($_SERVER['HTTP_ACCEPT_LANGUAGE']) {
$this->languages = $_SERVER['HTTP_ACCEPT_LANGUAGE']; /*Здесь ошибка*/
$this->language = substr($this->languages, 0, 2); /* И Здесь ошибка*/
return $this->language;
} else if ($_SERVER['HTTP_USER_AGENT']) {
$this->user_agent = explode(";", $_SERVER['HTTP_USER_AGENT']);
for ($i = 0; $i < sizeof($this->user_agent); $i++) {
$this->languages = explode("-", $this->user_agent[$i]);
if (sizeof($this->languages) == 2) {
if (strlen(trim($this->languages[0])) == 2) {
$size = sizeof($this->language);
$this->language[$size] = trim($this->languages[0]);
}
}
}
return $this->language[0];
} else {
$this->language = $DEFAULT_LANGUAGE;
return $this->language;
}
}
PHP задачи с собеседований🔥 Тест для разработчиков, тимлидов и архитекторов!🔥
Ответьте на 11 вопросов и узнайте, достаточно ли у вас знаний, чтобы пройти онлайн-курс «Software Architect» в OTUS.
Курс поможет прокачать весь арсенал навыков, необходимых архитектору ПО.
👉 ПРОЙТИ ТЕСТ https://otus.pw/xqJ9/
💣 Пройдете тест и получите:
✔️ Живое общение с экспертами-практиками
✔️ Лучшие открытые уроки прошлых наборов курса
✔️ Продвинутые темы и практика на «боевых» задачах уровня Middle+
✔️ Скидку на прохождение онлайн курса «Software Architect».
Курс доступен в рассрочку.
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. 2RanymYf1U4
Хотите эффективно использовать Битрикс24? Приходите 22 июня на открытый урок «Роботы и триггеры», который пройдет в преддверии старта онлайн-курса «Интегратор Битрикс24» в OTUS.
На занятии мы изучим стандартные действия блоков:
- "Коммуникация с клиентом",
- "Информирование сотрудников",
- "Контроль сотрудников".
После занятия вы сможете применять блоки действий роботов и автоматизировать процессы обработки задач и сущностей CRM с помощью данных блоков.
Продолжить изучать Битрикс24 вы сможете на курсе, доступном в рассрочку.
Для участия зарегистрируйтесь https://otus.pw/HMoK/
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. 2Ranym5yEPr
🔥Работаете с Битрикс24 — значит открываете двери в миллионы российских компаний, которые используют Битрикс24 для организации своих бизнес-процессов.
⚡️Начните осваивать Битрикс24 на открытом уроке 20 июня в 20:00 мск «Бизнес-процессы и роботы».
На этом вебинаре мы:
— Рассмотрим разницу между роботами и бизнес-процессами.
— Создадим обработку документов с помощью роботов и бизнес-процессов.
— Научимся взаимодействовать с бэкэндом для обработки данных процесса
— Рассмотрим обычный бизнес-процесс и бизнес-процесс со статусами.
— Создадим роботов обработки документов.
👉🏻Регистрация для участия https://otus.pw/nMiBw/
Вебинар пройдет в преддверии старта онлайн-курса «Разработчик Битрикс24» в OTUS.
Курс подходит как опытным так и начинающим PHP-разработчикам.
Не упустите возможность протестировать формат обучения!
Оплатить курс можно любым удобным для вас способом.
Нативная интеграция информация о продукте www.otus.ru
👨🏻💻 Ошибка bcdiv(): Argument #1 ($num1) is not well-formed
Помогите пожалуйста пофиксить данную ошибку
Данные приходят с внешнего api в float формате, цель сделать из float строку и обрезать в конце нули (чтобы также прогонять подобные строки '0.5450000' => '0.545')
<?php
function to_string($value, $fix = 12) {
$string = bcdiv($value, 1, $fix);
return $string = $fix > 0 ? rtrim(rtrim($string, '0'), '.') : $string;
}
$result = to_string(1.5);
echo gettype($result) .' '. $result; // string 1.5
$result = to_string(1.0E-6); // Ошибка bcdiv(): Argument #1 ($num1) is not well-formed
echo gettype($result) .' '. $result;
PHP задачи с собеседований👨🏻💻 Как выбрать элемент с указанным шансом?
Есть данный массив:
Array ( [cost] => 1475.00 [case] => sharp [chance] => 0.47864506627393 ) Array ( [cost] => 1399.00 [case] => sharp [chance] => 0.51546391752577 ) Array ( [cost] => 1600.00 [case] => sharp [chance] => 0.44182621502209 ) Array ( [cost] => 1478.00 [case] => sharp [chance] => 0.47864506627393 ) Array ( [cost] => 1050.00 [case] => sharp [chance] => 0.68114874815906 ) Array ( [cost] => 309.00 [case] => sharp [chance] => 2.319587628866 ) Array ( [cost] => 279.00 [case] => sharp [chance] => 2.5773195876289 ) Array ( [cost] => 93.00 [case] => sharp [chance] => 7.7135493372607 ) Array ( [cost] => 109.00 [case] => sharp [chance] => 6.5905743740795 ) Array ( [cost] => 130.00 [case] => sharp [chance] => 5.5228276877761 ) Array ( [cost] => 23.00 [case] => sharp [chance] => 10.861561119293 ) Array ( [cost] => 29.00 [case] => sharp [chance] => 13.696612665685 ) Array ( [cost] => 31.00 [case] => sharp [chance] => 14.635493372607 ) Array ( [cost] => 109.00 [case] => sharp [chance] => 6.5905743740795 ) Array ( [cost] => 2.42 [case] => sharp [chance] => 1.1413843888071 ) Array ( [cost] => 5.39 [case] => sharp [chance] => 2.540500736377 ) Array ( [cost] => 24.00 [case] => sharp [chance] => 11.321796759941 ) Array ( [cost] => 10.00 [case] => sharp [chance] => 4.7128129602356 ) Array ( [cost] => 13.00 [case] => sharp [chance] => 6.1303387334315 ) Array ( [cost] => 0.60 [case] => sharp [chance] => 0.27614138438881 ) Array ( [cost] => 0.60 [case] => sharp [chance] => 0.27614138438881 ) Array ( [cost] => 0.60 [case] => sharp [chance] => 0.27614138438881 ) Array ( [cost] => 0.12 [case] => sharp [chance] => 0.055228276877761 ) Array ( [cost] => 0.12 [case] => sharp [chance] => 0.055228276877761 ) Array ( [cost] => 0.12 [case] => sharp [chance] => 0.055228276877761 ) Array ( [cost] => 0.12 [case] => sharp [chance] => 0.055228276877761 )Сумма элемента chance равна 100%, то есть в chance указан шанс выпадения в %, какой наиболее лучший способ будет чтобы выбирать элемент из массива с указанным шансом? Мне в голову приходить только домножение на N и выбор с помощью rand(1, 100 * N), но не думаю что данный способ является корректным. PHP задачи с собеседований
🔥 Тест для разработчиков, тимлидов и архитекторов!🔥
Ответьте на 11 вопросов и узнайте, достаточно ли у вас знаний, чтобы пройти онлайн-курс «Software Architect» в OTUS по спец.цене.
Курс поможет прокачать весь арсенал навыков, необходимых архитектору ПО.
👉 ПРОЙТИ ТЕСТ https://otus.pw/JrTH/
Курс доступен в рассрочку.
Присоединяйтесь 13 июня в 20:00 мск к открытому уроку «Взаимодействия на основе событийной модели». На этом мероприятии мы:
— Обсудим использование событий для асинхронного взаимодействия в системах.
— Разберемся, какие преимущества и недостатки событийной модели по сравнению с архитектурой request-reply.
— Рассмотрим некоторые паттерны реализации систем, основанных на событиях, и поговорим о проектировании событий.
В рамках бесплатного курса «Паттерны и практики написания кода» на канале AvitoTech вышла новая лекция. Она о Dependency Injection, четырёх вариантах его реализации и о разнице с Dependency Inversion.
Ранее на курсе также был обзор по SOLID-принципам на примере с живым, рабочим кодом. Подписывайтесь, смотрите и пишите грамотный код!
Реклама. ООО «Авито Тех». LdtCKaUiJ
👨🏻💻 Как отправить headers на localhost Laravel?
В доках нужно ставить полный путь на сайт но так же не найдет:
$response = Http::withToken($token)->post('http://localhost/api/auth/logout');
а так он не знает сайт
$response = Http::withToken($token)->post('api/auth/logout');
PHP задачи с собеседований🔥PHP-разработчики, которые имеют опыт и сильную практику разработки на Битрикс24, по-прежнему востребованы российскими компаниями и останутся таковыми в будущем.
❗️На курсе “Разработчик Битрикс24” в ОТУС вы научитесь программировать свободно, без учета доктрины платформы и получите ценные навыки, которые сформируют качественно новое представление о продукте и помогут вывести Битрикс24 на более высокий уровень в любой компании.
Приходите на практическое занятие «Компонент списка таблицы БД» в ОТУС 8 июня в 20:00, где мы с экспертом рассмотрим, как создавать свои таблицы в БД Битрикс24, а также создадим комплексный компонент списка, включая такие элементы, как фильтр, пагинация, кнопки действий.
После урока вы научитесь:
- Cоздавать свои компоненты для Битрикс24
- Добавлять выгрузку данных списка в Excel
- Добавлять свои данные и действия в шаблон
👉Для участия зарегистрируйтесь https://otus.pw/HpLK/
Бесплатный вебинар подойдет начинающим и опытным разработчикам PHP, которые хотят получить навык разработки в Битрикс 24. Полный курс можно приобрести удобным для вас способом, в том числе и в рассрочку. Нативная интеграция информация о продукте www.otus.ru
Без лишних слов: 20 ТБ курсов
Не платите за курсы, если они в свободном доступе!
Архиватор – тут есть всё
👨🏻💻 Реальная проблема реального человека
Необходимо на php реализовать расчет гамма-функции
Задачка переводится с excel на yii2. Нужно на php рассчитывать Гамма функцию. В модуле stats вроде есть функция stats_cdf_gamma. Но пока не могу понять что там за входящие параметры(3шт.), в excel всего один параметр: гамманлог(х). Как-то в статистике и высшей математике не силен. Поскажите, можно ли будет использовать указанную функцию, или как-то подцепить ёкселевские функции или ещё какой вариант.
PHP задачи с собеседований
ЧЕ, АЙТИШНИК, ДА? КРАСАВЧИК!
Сделали для вас самую полезную подборку каналов по программированию. В ней собраны официальные русскоязычные каналы самых популярных языков. Там только топовая информация, которая потом появляется на платных курсах. Надо подписаться: @it
🗓 6 июня в 19:00 мск пройдет бесплатный практический вебинар «Профессия«PHP-разработчик»: экспресс-старт в создании веб-приложений».
— Расскажем, как работают сайты и веб-приложения
— Подсветим компетенции разработчика на старте
— Посмотрим на примерах, насколько востребован язык в 2023 году
Вы на практике познакомитесь с основами PHP и создадите форму регистрации пользователей вместе с опытным программистом.
🎁 А еще получите полезные подарки от Хекслета — Гайд «Как заговорить на сленге IT-специалистов» и Карту компетенций PHP-разработчика!
Записывайтесь на вебинар и разберитесь, подходит ли вам профессия —> https://ru.hexlet.io/link/4mcSdQ
👨🏻💻 Блокирование файла сессии Laravel
В проекте на Laravel 7 иногда вываливается ошибка upstream timed out (110: Unknown error) while reading response header from upstream Сам сайт отдает при этом ошибку 504. Перебирая пошагово на каком этапе возникает проблема, пришел к тому, что в Middleware StartSession есть такая проверка на доступность сессии:
$session = $this->getSession($request);
if ($this->manager->shouldBlock() || ($request->route() && $request->route()->locksFor())) {
return $this->handleRequestWhileBlocking($request, $session, $next);
} else {
return $this->handleStatefulRequest($request, $session, $next);
}
Если изменить драйвер на Coockie, то проблема пропадает, но использовать куки в качестве хранилища не вариант, как и БД. Проблема возникает если использовать в качестве драйвера и file и redis. Есть ли какое-то решение этой проблемы?
PHP задачи с собеседований👨🏻💻 Нужно отфильтровать строку PHP
Нужно с помощью regexp сделать так, что 1) были только русские и английские буквы, цифры, пробелы и знаки !#$&() 2) не было английских букв рядом с русскими(при нахождении русская буква заменяется "#"
function filter($str){
$pattern = '/[^a-zA-Z\d а-яёА-ЯЁ]/';
$replacement = '';
$str=preg_replace($pattern, $replacement, $str);
$replacement = '\1#';
$pattern = '/([a-zA-Z])([а-яёА-ЯЁ])/';
$str=preg_replace($pattern, $replacement, $str);
$pattern = '/([^а-яёА-ЯЁ])([a-zA-Z])/';
$replacement = '#\2';
$str=preg_replace($pattern, $replacement, $str);
return $str;
}
PHP задачи с собеседований
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
