PHP задачи с собеседований
رفتن به کانال در Telegram
Задачи, тесты и теоретические вопросы по PHP. Прислать задачу/вопрос в дар: @cyberJohnny Сотрудничество: @cyberJohnny
نمایش بیشتر2 906
مشترکین
-124 ساعت
-17 روز
-1030 روز
آرشیو پست ها
🔥 Пройди тест по PHP и проверь свои знания.
Ответишь — пройдешь на продвинутый курс "PHP Developer. Professional" от OTUS по специальной цене + получишь запись мастер-класса от преподавателя курса🎁 .
👉 ПРОЙТИ ТЕСТ: https://otus.pw/EiOm/
Успей присоединится к апрельской группе!
Нативная интеграция. Информация о продукте www.otus.ruБез лишних слов: 20 ТБ курсов
Не платите за курсы, если они в свободном доступе!
Архиватор – тут есть всё
Курс анализа систем: учат проектировать системы и распиливать монолиты
12 мая стартует курс по «Анализу систем». 4-недельный курс о том, как проектировать системы. Новые — чтобы не переделывать, старые — чтобы разобрать на части и ускорить разработку. Учат распиливать монолиты, обоснованно выбирать технологии и архитектурные стили, оставляя после себя понятную документацию.
Если дойдёте до конца — сможете спроектировать ПО для большинства крупных работодателей или разбить на части доставшийся в наследство монолит на 500кк строк.
Авторы — Антон Давыдов и Школа сильных программистов. Возможно вы знакомы с ними по другому их легендарному курсу «Асинхронная архитектура».
Что будет на каждой неделе:
Неделя 0. Работа с требованиями, разделение системы на элементы (работа с требованиями, Event Storming, Модель данных, Базовое сравнение микросервисов и монолитов, Система, форма и функция системы)
Неделя 1. Стратегический анализ бизнеса и архитектурные стили (Strategic DDD, subdomains; Coupling & cohesion, temporal coupling, local & global complexity; Quality attributes/non functional requirements/architecture characteristics; Поиск характеристик и перевод бизнес-терминов в характеристики; Циклы жизни систем)
Неделя 2. Внешние ограничения и документация (Ограничения системы, Выбор вида БД в зависимости от характеристик, Выбор вида коммуникаций и брокера для событий, Fitness function)
Неделя 3. Распиливаем монолит (Добавление новой функциональности в отдельных сервисах; Объединение сервисов; Вынос функциональности из монолита в сервис; Strangler Fig Application, Volatility Based Decomposition, Tactical Forking, Component-Based Decomposition)
Неделя 4. Итоги и дальнейшие шаги.
Домашка будет без кода — только квадратики, так что подойдёт любой язык.
Есть тарифы с обратной связью и без. С личной проверкой домашек, чатом и Q^A-сессией. До 1 мая можно записаться по старой цене. Для подписчиков промокод PHPQUIZ10 даст дополнительную скидку в 10%. Действует до 1 мая.
Посмотреть программу и условия →
Хотите освоить фреймворк Symfony? Сделайте первый шаг в этом направлении на открытом уроке «Doctrine-extensions-bundle и его применение», которой пройдет 26 апреля в 20:00. Вместе с Михаилом Камориным, Team Lead в Skyeng мы рассмотрим:
⁃ мета-поля для хранения даты создания/последнего изменения сущности,
⁃ soft-delete и фильтры Doctrine,
⁃ автоматическая сортировка сущностей с учётом групп.
Занятие является бесплатной demo частью онлайн-курса “Symfony Framework”.
Оплата курса возможна в рассрочку.
Успевайте зарегистрироваться на открытый урок! https://otus.pw/yBBz/
Нативная интеграция. Информация о продукте www.otus.ru
Какие паттерны нужно знать разработчикам? Один из них — паттерн Iterator. Именно его мы разберем на бесплатном вебинаре, который пройдет в преддверии старта онлайн-курса «Архитектура и шаблоны проектирования» в OTUS.
На занятии с Евгением Тюменцевым, директором компании по разработке ПО, вы узнаете:
- Что из себя представляет подход Data Streams
- Как принцип инверсии зависимостей (dependency inversion principle, DIP) используется для получения паттерна Iterator
- Как применяется принцип инверсии зависимостей для получения повторно используемых алгоритмов над коллекциями объектов.
- Почему стоит избавляться от циклов при работе с коллекциями
После вебинара «Паттерн Iterator: от применения принципа DIP до Data Streams» вы сможете продолжить обучение на курсе в рассрочку.
Пройдите вступительный тест и зарегистрируйтесь, чтобы не пропустить занятие: https://otus.pw/Z9pk/
#реклама
Решение задачи 👆
<?php
//Присвоили первую строку
$a='Добро ';
//Присвоили вторую строку
$b='побеждает ';
//Присвоили третью строку
$c='зло ';
//Присвоили объединенную строк
$d=$a.$b.$c; у
//Выведет 'Добро побеждает зло'
echo $d, '<br>';
?>
PHP задачи с собеседований👨💻 Задача для вас. Решение в следующем посте
Создайте три переменные и присвойте им строки: 'Добро ', 'побеждает ', 'зло'. Создайте еще одну переменную и присвойте ей объединенную строку (для конкатенации строковых переменных используйте обычную точку). Выведите ее на экран.
PHP задачи с собеседований
Решение задачи 👆
<?php
$a=true; //Присвоили логическое значение true
$b=false; //Присвоили логическое значение false
$f=4365.8; //Присвоили вещественное число
$z=sqrt(-2); //Присвоили корень квадратный из -2
echo $a, '<br>'; //Выведет 1, т.к. true преобразуется в строку '1'
echo $b, '<br>'; //Выведет пустую строку, т.к. false преобразуется в ''
echo $z, '<br>'; //Выведет NAN
echo $f; //Выведет 4365.8, точнее строку '4365.8'
?>
PHP задачи с собеседований👨💻 Задача для вас. Решение в следующем посте
Создайте переменные, присвоив им логические значения true и false, вещественное число 43.658+e2, но предварительно записав его в обычном виде, и корень квадратный из отрицательного числа, например, sqrt(-2). Выведите значения всех переменных на экран.
PHP задачи с собеседований
Хотите освоить фреймворк Symfony? Сделайте первый шаг в этом направлении на открытом уроке «Doctrine-extensions-bundle и его применение», которой пройдет 26 апреля в 20:00. Вместе с Михаилом Камориным, Team Lead в Skyeng мы рассмотрим:
⁃ мета-поля для хранения даты создания/последнего изменения сущности,
⁃ soft-delete и фильтры Doctrine,
⁃ автоматическая сортировка сущностей с учётом групп.
Занятие является бесплатной пробной частью онлайн-курса “Symfony Framework”. Оплата курса возможна в рассрочку.
Успевайте зарегистрироваться на открытый урок! https://otus.pw/SCpx/
👨💻 Реальный вопрос от реального человека
Почему route в Codeigniter 4, присваивает неверное значение параметру контроллера?
Возникла непонятная ситуация. При передаче значения false в обычную функцию, где по-умолчанию значение = null присвоение или вывод значения происходит правильно:
function some(?bool $a = null)
{
var_dump($a);
}
some();
some(true);
some(false);
Результат:
NULL
bool(true)
bool(false)
Однако, когда я попытался передать тоже самое в параметр контроллера через route, то для значения false вывелось true, что, соответственно, дало неверные результаты. Из-за чего такое могло произойти? Может codeigniter как-то по-другому false в параметре обрабатывает? Route-ы:
$routes->get('default', 'Results::index');
$routes->get('successful', 'Results::index/true');
$routes->get('errors', 'Results::index/false');
Controller:
public function index(?bool $decline = null)
{
var_dump($decline);
exit;
}
Результат:
NULL
bool(true)
bool(true)
PHP задачи с собеседований💪 Пройди тест по PHP и проверь свои знания.
Ответишь — пройдешь на продвинутый курс "PHP Developer. Professional" от OTUS по специальной цене + получишь запись мастер-класса от преподавателя курса🎁 .
⛔️ ПРОЙТИ ТЕСТ: https://otus.pw/W2qJ/
Нативная интеграция. Информация о продукте www.otus.ruРешение задачи 👆
<?php
//Правила записи имен
//Верно
$a=1;
//Верно
$B=2;
//Верно
$b=3;
//Не верно (недопустимый символ)
$first.number=4;
//Верно (верблюжья нотация)
$firstNumberOf=5;
function m_func(){
//Верно
$_local=1;
//Верно (верблюжья нотация)
$locAl=2;
//Верно (змеиная нотация)
$local_var=3;
//Не верно (начинать с числа запрещено)
$10_local_var=4;
//Верно (смесь)
$local_Var=5;
//Не верно (пробелы запрещены
$local Var=6; )
}
//Не верно (начинать с числа запрещено)
function 5_func(){
//Верно (смесь)
$___a_A=10;
}
/* Для просмотра в браузере закомментируйте неверные инструкции, а затем
поочередно раскомментируйте их и посмотрите результат */
?>
PHP задачи с собеседований👨💻 Задача для вас. Решение в следующем посте
Имена каких из переменных, указанных в условии, заданы неверно? Почему?
<?php
//Правила записи имен
$a=1;
$B=2;
$b=3;
$first.number=4;
$firstNumberOf=5;
function m_func(){
$_local=1;
$locAl=2;
$local_var=3;
$10_local_var=4;
$local_Var=5;
$local Var=6;
}
function 5_func(){
$___a_A=10;
}
?>
PHP задачи с собеседованийКурс «Английский для разработчиков» Яндекс Практикума
Для тех, кто хочет изменить свою профессиональную жизнь и работать в международной команде.
Обучение построено не вокруг абстрактной теории, а вокруг рабочих ситуаций и полезных для карьеры навыков:
✋Стендапы. Подготовитесь обсуждать задачи, задавать вопросы и просить о помощи.
👨💻 Работа с заказчиками. Научитесь презентовать решения, говорить про баги и фичи.
📣 Митапы. Сможете понимать на слух доклады и выступать сами.
😎 Собеседования. Научитесь рассказывать про свой опыт, понимать вопросы и тактично переспрашивать.
👯 Неформальное общение с коллегами. Сможете рассказать о своих интересах, опыте, планах на будущее.
💻 Код-ревью. Сможете описать сделанное, дать обратную связь, тактично отстоять своё мнение.
Запишитесь на бесплатную консультацию. Кураторы определят ваш уровень языка и расскажут подробнее про обучение.
Готовы освоить Best Practice по разработке микросервисной архитектуры и сложных отказоустойчивых систем? Сделайте первые шаги на открытом уроке «Модульные монолиты и DDD» 🗓 17 апреля в 20:00 мск в OTUS.
На занятии вместе со Станиславом Щетинниковым, директором разработки с 10-летним опытом, рассмотрим основные паттерны для построения и написания модульных монолитов. Особое внимание будет уделено паттернам DDD.
👨💻 Занятие будет полезно для back-end разработчикам, тимлидам и администраторам.
👉 Для регистрации на урок пройдите вступительное тестирование — https://otus.pw/B6Wb/
А если вам понравятся бесплатные уроки, продолжить обучение можно будет уже на курсе «Microservice architecture» от OTUS. Оплата курса возможна в рассрочку.
Реклама. Информация о рекламодателе на сайте www.otus.ru
👨💻 Реальный вопрос от реального человека
Как сортировать двумерный ассоциативный массив по числовым значениям с сохранением ключей?
Имеется:
$arr = ['cat' => '2', 'dog' => '4', 'pig' => '1'];
Нужно получить:
$arr = ['pig' => '1', 'cat' => '2', 'dog' => '4'];
PHP задачи с собеседований🤖 Пройди тест по PHP
Проверь свои знания. Сможешь сдать — пройдёшь на продвинутый курс "PHP Developer. Professional" от OTUS по специальной цене.
После 5 месяцев обучения ты сможешь:
- Ориентироваться в экосистеме PHP
- Отличать парадигмы ООП от функционального программирования
- Писать понятный чистый код
- Повышать стабильность приложений.
В конце обучения тебя ждет проектная работа.
🎫Курс можно приобрести в рассрочку
👉 ПРОЙТИ ТЕСТ: https://otus.pw/W2qJ/
Реклама. Информация о рекламодателе на сайте otus.ru
اکنون در دسترس! پژوهش تلگرام ۲۰۲۵ — مهمترین بینشهای سال 
