en
Feedback
PHP | Вопросы собесов

PHP | Вопросы собесов

Open in Telegram

Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @easyoffer_adv

Show more
2 341
Subscribers
-224 hours
-57 days
-2330 days
Posts Archive
Помощь в трудоустройстве в IT-сфере! В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специал
+9
Помощь в трудоустройстве в IT-сфере! В России из-за дефицита айтишников запустили бесплатную программу по обучению IT-специалистов. Теперь любой желающий может попробовать себя в IT с полного нуля и начать обучение бесплатно! Узнайте про дальнейшее трудоустройство в ведущие IT-компании для восполнения кадрового дефицита. Для этого нужно: - Перейти по ссылке - Заполнить анкету и ответить на вопросы (занимает менее 3 минут) - На основании ваших ответов вы сразу узнаете, подходит ли вам сфера IT и сможете ли вы в ней работать Перейти на сайт #реклама 16+ urban-university.ru О рекламодателе

🤔 Какие основные команды Git вам известны? Git предоставляет широкий набор команд для управления версиями и сотрудничества в разработке программного обеспечения. 🚩Основные команды -git init Инициализация нового репозитория Git в текущей директории. -git clone <url> Клонирование существующего удаленного репозитория в новую директорию. -git status Проверка состояния текущего репозитория (измененные, добавленные, удаленные файлы). -git add <файл> Добавление изменений в индекс (стейджинг). -git commit -m "сообщение" Сохранение изменений с описанием в локальном репозитории. -git push Отправка изменений из локального репозитория в удаленный. -git pull Получение изменений из удаленного репозитория и интеграция их в локальный. 🚩Управление ветками -git branch Список существующих веток и указание текущей ветки. -git branch <название_ветки> Создание новой ветки. -git checkout <название_ветки> Переключение на указанную ветку. -git merge <название_ветки> Слияние указанной ветки с текущей. -git branch -d <название_ветки> Удаление указанной ветки. 🚩Ведение истории -git log Просмотр истории коммитов. -git diff Просмотр различий между коммитами, ветками и состояниями рабочего каталога. -git reset <коммит> Сброс текущей ветки до указанного коммита. -git revert <коммит> Создание нового коммита, который отменяет изменения из указанного коммита. 🚩Работа с удаленными репозиториями -git remote Управление удаленными репозиториями. -git fetch Получение изменений из удаленного репозитория без интеграции их в локальную ветку. -git remote add <имя> <url> Добавление нового удаленного репозитория. Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое уровни изоляции транзакций? Уровни изоляции транзакций в базах данных определяют, как одна транзакция может влиять на другие, которые выполняются одновременно. В SQL есть четыре стандартных уровня изоляции: READ UNCOMMITTED — транзакции могут видеть незавершенные изменения других транзакций. READ COMMITTED — транзакция видит только зафиксированные изменения. REPEATABLE READ — транзакция гарантирует, что данные не изменятся между чтениями. SERIALIZABLE — самый строгий уровень, где транзакции выполняются последовательно, как если бы они были выполнены одна за другой. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Только полезный контент для системных аналитиков! - Чек-лист вопросов, которые стоит задать на собеседовании с HR и руководит
Только полезный контент для системных аналитиков! - Чек-лист вопросов, которые стоит задать на собеседовании с HR и руководителем/командой; - Шпаргалки по методам HTTP, по основным понятиям Kafka, по диаграмме классов, по элементам BPMN и другие; - Шаблоны артефактов системного аналитика с примерами; - Материалы по кэшированию, про интеграцию и архитектуру , протоколы, API, форматы данных JSON; - и очень много практической информации на канале Ольги Пономаревой. Подписаться #реклама 16+ О рекламодателе

🤔 Какими бывают форматы запросов и ответов приложения? Форматы запросов и ответов приложения являются основополагающими компонентами взаимодействия между клиентом и сервером в веб-приложениях. 🚩Форматы запросов 🟠GET Используется для получения данных с сервера. GET /api/users?name=John. Когда нужно получить данные без изменения состояния сервера. 🟠POST Используется для отправки данных на сервер для создания или обновления ресурса. Когда нужно создать новый ресурс или обновить существующий.
POST /api/users
Content-Type: application/json
{
  "name": "John",
  "email": "john@example.com"
}
🟠PUT Используется для обновления ресурса на сервере. Когда нужно обновить существующий ресурс целиком.
PUT /api/users/1
Content-Type: application/json
{
   "name": "John Updated",
   "email": "john_updated@example.com"
}
🟠PATCH Используется для частичного обновления ресурса. Когда нужно обновить часть ресурса.
PATCH /api/users/1
Content-Type: application/json
{
  "email": "john_new@example.com"
}
🟠DELETE Используется для удаления ресурса с сервера. DELETE /api/users/1. Когда нужно удалить ресурс. 🚩Форматы ответов 🟠HTML Ответ в виде HTML-кода. <html><body><h1>User Profile</h1></body></html>. Для отображения веб-страниц в браузере. 🟠JSON Легковесный формат обмена данными, удобный для передачи данных между клиентом и сервером. Широко используется в RESTful API.
{
  "id": 1,
  "name": "John",
  "email": "john@example.com"
}
🟠XML Расширяемый язык разметки, используемый для обмена данными. Ранее широко использовался в веб-сервисах, сейчас реже.
<user>
  <id>1</id>
  <name>John</name>
  <email>john@example.com</email>
</user>
🟠Plain Text Обычный текст без разметки. User created successfully. Для простых ответов, где не требуется структура данных. 🟠File Formats (например, CSV, PDF) Ответ в виде файлов различных форматов. Отправка отчетов в виде PDF или данных в виде CSV. Когда нужно предоставить данные в формате файла. 🚩Пример использования в PHP Пример использования формата JSON для отправки данных о пользователе:
header('Content-Type: application/json');

$response = [
    'id' => 1,
    'name' => 'John',
    'email' => 'john@example.com'
];

echo json_encode($response);
Ставь 👍 и забирай 📚 Базу знаний

📶 С 1 декабря для граждан РФ открыт доступ к платным материалам по программированию Вот отсортированные базы с тонной матери
📶 С 1 декабря для граждан РФ открыт доступ к платным материалам по программированию Вот отсортированные базы с тонной материала(книги, курсы, ресурсы и гайды). Выбирай своё направление: 👩‍💻 Frontend 👩‍💻 PHP ⚙️ Backend 👩‍💻 Моб. Dev 📱 GitHub 👩‍💻 GameDev 🤓 Всё айти 👩‍💻 DevOps 👩‍💻 Python 🖥 Data Science 👩‍💻 Java 🐞 Тестирование 👩‍💻 C# 🤔 Хакинг & ИБ 👩‍💻 С/С++ 📱 Маркетинг 🖥 SQL 🖥 Дизайн 👩‍💻 Golang 👣 Rust Скачивать ничего не нужно — все выложили в Telegram с доступом по ссылке

🤔 Чем отличается PHP от C++? PHP и C++ — это разные языки программирования, предназначенные для разных целей. PHP — это язык для веб-разработки, предназначенный для серверной стороны. Он в первую очередь используется для создания динамических веб-страниц. C++ — это язык общего назначения, используемый для разработки программного обеспечения с высокой производительностью, таких как игры, операционные системы, драйвера и т.д. PHP интерпретируется на сервере, а C++ компилируется в машинный код. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Оптимизация налогов! Законно! С гарантией 3 года! ⚡Оптимизируем до 20 млн рублей бесплатно новым клиентам! За текущий или предыдущие кварталы! Стоимость от 0,9%!💰 🗒Оставьте заявку и мы бесплатно окажем вам подробную консультацию! 👍Жмите кнопку "Подать заявку" и узнайте подробности персонально для вашего бизнеса! Подать заявку #реклама О рекламодателе

🤔 Что такое репликация? Это процесс создания и поддержания копий данных в разных местах для обеспечения доступности, надежности и производительности системы. Она используется в базах данных, файловых системах и других системах хранения данных. 🚩Зачем нужна репликация 🟠Повышение доступности Если одна копия данных становится недоступной из-за сбоя или отключения сервера, другая копия может продолжить обслуживание запросов, минимизируя время простоя. 🟠Улучшение производительности Репликация позволяет распределить нагрузку на несколько серверов, что улучшает время отклика системы при больших объемах запросов. 🟠Резервное копирование и восстановление данных Репликация обеспечивает наличие резервных копий данных, которые можно использовать для восстановления системы после сбоя. 🟠Географическое распределение данных Репликация позволяет хранить данные ближе к пользователям, что снижает задержку при доступе к данным. 🚩Виды репликации 🟠Синхронная репликация Данные одновременно записываются на основной и реплицированный серверы. Высокая консистентность данных. Замедление операций записи, так как они должны быть подтверждены на всех репликах. 🟠Асинхронная репликация Данные сначала записываются на основной сервер, а затем копируются на реплицированный сервер с задержкой. Быстрые операции записи на основной сервер. Возможность временной неконсистентности данных между серверами. 🟠Полная репликация Все данные копируются на все реплицированные серверы. Простота реализации и высокая доступность данных. Высокие затраты на хранение и передачу данных. 🟠Частичная репликация Только часть данных копируется на реплицированные серверы. Экономия ресурсов хранения и передачи данных. Более сложное управление данными. 🚩Пример использования MySQL поддерживает репликацию, что позволяет автоматически копировать данные с одного сервера (мастера) на один или несколько других серверов (слейвов). 1⃣Настройка мастера
-- Включаем бинарные логи на мастере
[mysqld]
log-bin=mysql-bin
server-id=1
2⃣Создание пользователя для репликации на мастере
CREATE USER 'replica_user'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'replica_user'@'%';
3⃣Настройка слейва
-- Настройки слейва
[mysqld]
server-id=2
4⃣Запуск репликации на слейве
CHANGE MASTER TO
    MASTER_HOST='master_host',
    MASTER_USER='replica_user',
    MASTER_PASSWORD='password',
    MASTER_LOG_FILE='mysql-bin.000001',
    MASTER_LOG_POS= 107;
START SLAVE;
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое Rest REST (Representational State Transfer) — это архитектурный стиль для разработки веб-сервисов. Он основывается на стандартах HTTP и включает использование простых методов (GET, POST, PUT, DELETE) для взаимодействия с ресурсами, представленных в виде URL. RESTful API являются безсессионными, и каждый запрос от клиента к серверу должен содержать всю необходимую информацию для выполнения операции. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Миграция в облако? Это легко! Собственная инфраструктура устарела или не справляется с нагрузками? Используйте облачные ресур
Миграция в облако? Это легко! Собственная инфраструктура устарела или не справляется с нагрузками? Используйте облачные ресурсы! Эксперты Yandex Cloud помогут перейти в облако быстро, легко и безопасно. ✅ Мы полностью сопровождаем процесс. ✅ От вас — только инженер с доступом к инфраструктуре. ✅ Архитектура под ваши задачи, миграция и поддержка на каждом шагу — всё включено. ⚡Переходите в Yandex Cloud и забудьте о старом железе. А если успеете подать заявку до 31 декабря, мы покроем расходы на инженеров и тестовую инфраструктуру. Подать заявку #реклама 16+ yandex.cloud О рекламодателе

🤔 Что делает final? Ключевое слово final в PHP используется для предотвращения дальнейшего наследования классов или переопределения методов. Оно может применяться к классам и методам. 🚩Применение `final` к классам Когда класс объявляется как final, он не может быть унаследован другим классом. Это означает, что никто не сможет создать подкласс от этого класса.
final class FinalClass {
    public function doSomething() {
        echo "Doing something";
    }
}

// Попытка наследования приведет к ошибке
class ChildClass extends FinalClass {
    // Ошибка: Class ChildClass cannot extend final class FinalClass
}
🚩Когда использовать Когда необходимо гарантировать, что класс не будет изменен через наследование, что может быть важно для обеспечения безопасности или целостности логики программы. Когда класс реализует окончательную логику, которую не нужно изменять. 🚩Применение `final` к методам Когда метод объявляется как final, он не может быть переопределен в наследуемом классе. Это означает, что если класс наследуется, то наследуемый класс не сможет изменить реализацию этого метода.
class BaseClass {
    final public function doSomething() {
        echo "Doing something in base class";
    }
}

class ChildClass extends BaseClass {
    // Попытка переопределения приведет к ошибке
    public function doSomething() {
        // Ошибка: Cannot override final method BaseClass::doSomething()
    }
}
🚩Когда использовать Когда необходимо гарантировать, что метод останется неизменным во всех производных классах, что важно для поддержания определенного поведения или контрактов в системе. Когда метод реализует важную бизнес-логику, которую не следует изменять. 🚩Пример использования `final` в реальном проекте Рассмотрим пример системы управления пользователями, где класс UserManager отвечает за управление пользователями. Допустим, что есть метод, который выполняет важную проверку безопасности, и вы хотите предотвратить его изменение в подклассах:
class UserManager {
    final public function verifyUser($user) {
        // Важная логика проверки пользователя
        if ($user->isValid()) {
            echo "User verified";
        } else {
            echo "User verification failed";
        }
    }

    public function createUser($name) {
        // Логика создания пользователя
        echo "User created: " . $name;
    }
}

class CustomUserManager extends UserManager {
    // Переопределение createUser допустимо
    public function createUser($name) {
        // Кастомная логика создания пользователя
        echo "Custom user created: " . $name;
    }

    // Попытка переопределить verifyUser приведет к ошибке
    public function verifyUser($user) {
        // Ошибка: Cannot override final method UserManager::verifyUser()
    }
}
Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое namespaces Namespaces в PHP — это способ организации кода для предотвращения конфликтов имен между классами, функциями и константами. Использование пространства имен позволяет создать уникальные идентификаторы, чтобы избежать пересечений между именами в крупных проектах или при использовании сторонних библиотек. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Мастер-класс по Python для школьников. Бесплатно! Онлайн-урок от ведущего ИТ ВУЗа страны - Университета Иннополис для ученико
Мастер-класс по Python для школьников. Бесплатно! Онлайн-урок от ведущего ИТ ВУЗа страны - Университета Иннополис для учеников 6-11 классов. 👍Бесплатно! ✅Познакомим с профессией тестировщика. ✅Научим проверять программы, находить баги. ✅На практике отработаем использование инструментов и методов тестирования. ⚡Ваш ребёнок за один час создаст автоматический тест на языке программирования Python и сможет использовать полученные знания в дальнейшем! Для участия важно знание основ программирования на Python. Помогите ребёнку освоить востребованную профессию. Регистрируйтесь! Зарегистрироваться #реклама 16+ progmatica.innopolis.university О рекламодателе

🤔 Что появилось в версии 7.4 PHP? 🟠Стрелочные функции (Arrow Functions) Являются сокращенным синтаксисом для анонимных функций. Они облегчают написание коротких функций.
$nums = [1, 2, 3, 4, 5];
$squared = array_map(fn($n) => $n * $n, $nums);
print_r($squared); // Выведет: [1, 4, 9, 16, 25]
🟠Типизация свойств класса (Typed Properties) Теперь можно указывать типы свойств в классах, что повышает безопасность и надежность кода.
class User {
    public int $id;
    public string $name;

    public function __construct(int $id, string $name) {
        $this->id = $id;
        $this->name = $name;
    }
}

$user = new User(1, "John");
echo $user->name; // Выведет: John
🟠Оператор null coalescing assignment (??=) Этот оператор упрощает установку значения по умолчанию, если переменная не установлена.
$data['name'] ??= 'Default Name';
echo $data['name']; // Выведет: Default Name
🟠Разрешение функции с переменным числом аргументов (spread operator) в массивы Теперь можно использовать оператор ... для распаковки массивов в функции.
$array1 = [1, 2, 3];
$array2 = [4, 5, 6];
$combined = [...$array1, ...$array2];
print_r($combined); // Выведет: [1, 2, 3, 4, 5, 6]
🟠Weak References (Слабые ссылки) Слабые ссылки позволяют удерживать ссылку на объект без предотвращения его удаления сборщиком мусора.
$obj = new stdClass();
$weakRef = WeakReference::create($obj);

var_dump($weakRef->get()); // Выведет: object(stdClass)#1 (0) {}

unset($obj);

var_dump($weakRef->get()); // Выведет: NULL
🟠Определение массива в константах Теперь можно использовать массивы как константы.
class MyClass {
    public const MY_ARRAY = [1, 2, 3];
}

print_r(MyClass::MY_ARRAY); // Выведет: [1, 2, 3]
🟠Улучшения производительности и устранение устаревших функций PHP 7.4 также включает множество улучшений производительности и удаление устаревших функций и конструкций, что делает язык более эффективным и безопасным. Ставь 👍 и забирай 📚 Базу знаний

🤔 В чем отличие адаптера от декоратора Адаптер и декоратор — это структурные паттерны проектирования, но они решают разные задачи. Адаптер используется для преобразования интерфейса одного класса в интерфейс, который ожидает клиент, чтобы классы с несовместимыми интерфейсами могли работать вместе. Декоратор, наоборот, добавляет новую функциональность к объекту, не изменяя его структуру, позволяя динамически изменять поведение объекта. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Цены на все Серверы онлайн! Удобный конфигуратор! Серверы STSS Flagman✅ Огромный выбор решений 👍 Консультации лучших эксперт
Цены на все Серверы онлайн! Удобный конфигуратор! Серверы STSS Flagman✅ Огромный выбор решений 👍 Консультации лучших экспертов 👌 Непревзойденный сервис ❤️ Получить предложение #реклама stss.ru О рекламодателе

🤔 Какие версии PHP сейчас поддерживаются? 🚩Активная поддержка 🟠PHP 8.3 Эта версия была выпущена 23 ноября 2023 года. Активная поддержка будет продолжаться до 31 декабря 2025 года, а затем будет обеспечиваться поддержка только для критических исправлений безопасности до 31 декабря 2027 года. 🟠PHP 8.2 Выпущена 8 декабря 2022 года. Активная поддержка продолжается до 31 декабря 2024 года, а затем поддержка безопасности до 31 декабря 2026 года. 🚩Поддержка только для безопасности 🟠PHP 8.1 Выпущена 25 ноября 2021 года. Активная поддержка завершилась 25 ноября 2023 года. Поддержка безопасности будет предоставляться до 31 декабря 2025 года. 🟠Версии PHP 8.0 и старше Больше не поддерживаются, что означает, что они не получают ни исправлений ошибок, ни обновлений безопасности. Поэтому рекомендуется обновить свои проекты до одной из поддерживаемых версий. Ставь 👍 и забирай 📚 Базу знаний

🤔 Что такое http? HTTP (HyperText Transfer Protocol) — это протокол прикладного уровня, используемый для передачи данных между клиентом и сервером в интернете. Он работает по модели запрос-ответ, где клиент запрашивает ресурсы, а сервер предоставляет их. HTTP является основой для работы веб-приложений. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚 Базу знаний

Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как
Запустите рекламу в телеграм-каналах с Яндекс Директом Перфоманс-реклама теперь в телеграм-каналах ⚡ Яндекс Директ знает, как привлечь целевую аудиторию 💰👌 Попробовать #реклама yandex.ru О рекламодателе