
🔥 Заказ на 20+ каналов — шанс выиграть iPhone 16 Pro
Массовые размещения дают просмотры в 2-3 раза дешевле и участие в розыгрыше
Подробнее

РегистрацияВойтиВойти
Скидка 3,5% на первые три заказа
Получите скидку на первые три заказа!
Зарегистрируйтесь и получите скидку 3,5% на первые рекламные кампании — промокод активен 7 дней.
5.1

PHP | Вопросы собесов
2
Поделиться
В избранное
Купить рекламу в этом канале
Формат:
keyboard_arrow_down
- 1/24
- 2/48
1 час в топе / 24 часа в ленте
Количество:
keyboard_arrow_down
- 1
- 2
- 3
- 4
- 5
- 8
- 10
- 15
Стоимость публикации:
local_activity
3 356.64₽3 356.64₽local_mall
0.0%
Осталось по этой цене:0
Последние посты канала
imageИзображение не доступно для предпросмотра
Вебинар для техспециалистов, IT-директоров и CTO
• Как грамотно оборудовать переговорные комнаты для онлайн-встреч и ВКС?
• Какое ПО и аппаратуру выбрать для эффективного онлайн и гибридного обучения сотрудников?
• Как минимизировать ошибки при замене иностранного ПО на российское в уже оборудованных переговорных комнатах?
✅ Узнайте ответы на вебинаре МТС Линк для техспециалистов, ИТ-директоров и СТО
За 30 минут разберём:
- какие решения подходят под ваши задачи и бюджет;
- базовую комплектацию переговорных комнат и аудиторий от МТС Линк;
- схемы подключения для переговорных комнат от 2 до 20+ мест;
- кейсы компаний, которые уже оснастили переговорки с МТС Линк.
👍 Бонус: дарим всем участникам ПО МТС Линк для переговорок на 1 год при покупке оборудования.
Регистрируйтесь на вебинар по ссылке
Зарегистрироваться
#реклама 16+
mts-link.ru
О рекламодателе
311
22:05
11.09.2025
🤔 Какие бывают области видимости?
Область видимости (или видимость) определяет, где в коде можно получить доступ к переменным, функциям и другим объектам. В PHP есть несколько видов областей видимости, которые контролируют доступность этих элементов в разных частях программы.
🚩Основные области видимости
🟠Локальная область видимости
Переменные, объявленные внутри функции, имеют локальную область видимости и доступны только внутри этой функции.
<?php
function test() {
$localVar = "I'm local";
echo $localVar; // Выведет "I'm local"
}
test();
echo $localVar; // Ошибка: переменная не найдена
?>{}
🟠Глобальная область видимости
Переменные, объявленные вне функций и классов, имеют глобальную область видимости и доступны везде в скрипте, кроме внутренних областей видимости (например, внутри функций), если не использовать ключевое слово global
.
<?php
$globalVar = "I'm global";
function test() {
global $globalVar;
echo $globalVar; // Выведет "I'm global"
}
test();
?>{}
🟠Область видимости функций и методов
Переменные, объявленные внутри функции или метода класса, имеют свою локальную область видимости и не видны за её пределами.
<?php
class Test {
public function method() {
$localVar = "I'm local in method";
echo $localVar; // Выведет "I'm local in method"
}
}
$test = new Test();
$test->method();
echo $localVar; // Ошибка: переменная не найдена
?>{}
🟠Область видимости классов
Публичная (public)
Публичные свойства и методы доступны отовсюду: как внутри класса, так и вне его.
<?php
class Test {
public $publicVar = "I'm public";
public function publicMethod() {
echo $this->publicVar;
}
}
$test = new Test();
echo $test->publicVar; // Доступно и выведет "I'm public"
$test->publicMethod(); // Доступно и выведет "I'm public"
?>{}
🟠Защищённая (protected)
Защищённые свойства и методы доступны только внутри класса и его наследников.
<?php
class Base {
protected $protectedVar = "I'm protected";
protected function protectedMethod() {
echo $this->protectedVar;
}
}
class Derived extends Base {
public function accessProtected() {
echo $this->protectedVar; // Доступно
$this->protectedMethod(); // Доступно
}
}
$derived = new Derived();
$derived->accessProtected(); // Выведет "I'm protected"
// echo $derived->protectedVar; // Ошибка: доступ запрещен
// $derived->protectedMethod(); // Ошибка: доступ запрещен
?>{}
🟠Приватная (private)
Приватные свойства и методы доступны только внутри класса, в котором они объявлены, и недоступны в наследниках.
<?php
class Test {
private $privateVar = "I'm private";
private function privateMethod() {
echo $this->privateVar;
}
public function accessPrivate() {
$this->privateMethod(); // Доступно
}
}
$test = new Test();
$test->accessPrivate(); // Выведет "I'm private"
// echo $test->privateVar; // Ошибка: доступ запрещен
// $test->privateMethod(); // Ошибка: доступ запрещен
?>{}
🟠Локальная область видимости
Переменные доступны только внутри функции или метода, где они объявлены.
🟠Глобальная область видимости
Переменные доступны везде в скрипте, кроме внутренних областей видимости, если не используется global
.
🟠Публичная область видимости
Свойства и методы доступны отовсюду.
🟠Защищённая область видимости
Свойства и методы доступны только внутри класса и его наследников.
🟠Приватная область видимости
Свойства и методы доступны только внутри класса, в котором они объявлены.
Ставь 👍 и забирай 📚 Базу знаний320
12:05
12.09.2025
🤔 Что такое абстрагирование?
Это принцип объектно-ориентированного программирования, позволяющий выделять только важные характеристики объекта и скрывать детали его реализации.
1. Оно фокусируется на том, что объект делает, а не на том, как он это делает.
2. Реализуется через абстрактные классы, интерфейсы или методы.
3. Помогает упрощать сложные системы, скрывая ненужные детали и обеспечивая высокую модульность.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
327
19:10
12.09.2025
🤔 Что известно о MVC?
Это паттерн проектирования, широко используемый для создания структурированных и масштабируемых приложений. Он разделяет приложение на три основных компонента: Модель (Model), Представление (View) и Контроллер (Controller).
🚩Основные компоненты
🟠Модель (Model)
Модель отвечает за данные и бизнес-логику приложения. Она управляет доступом к данным, логикой их обработки и взаимодействием с базой данных. В приложении электронной коммерции модель будет содержать классы, представляющие продукты, пользователей и заказы, а также методы для работы с этими данными (например, добавление нового продукта, обработка заказа и т.д.).
🟠Представление (View)
Представление отвечает за отображение данных пользователю. Оно формирует пользовательский интерфейс на основе данных, предоставляемых моделью. Веб-страницы, отображающие список продуктов, форму регистрации или страницу заказа, являются примерами представлений.
🟠Контроллер (Controller)
Контроллер действует как посредник между моделью и представлением. Он обрабатывает входные данные от пользователя, взаимодействует с моделью для выполнения необходимых операций и выбирает соответствующее представление для отображения результата. Контроллер может обрабатывать запрос на добавление нового продукта, получать данные от модели и затем отображать обновленный список продуктов через представление.
🚩Примеры
Model
// app/Models/Product.php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Product extends Model {
protected $fillable = ['name', 'price', 'description'];
}{}
Controller
// app/Http/Controllers/ProductController.php
namespace App\Http\Controllers;
use App\Models\Product;
use Illuminate\Http\Request;
class ProductController extends Controller {
public function index() {
$products = Product::all();
return view('products.index', compact('products'));
}
public function store(Request $request) {
Product::create($request->all());
return redirect()->route('products.index');
}
}{}
View
<!-- resources/views/products/index.blade.php -->
<!DOCTYPE html>
<html>
<head>
<title>Products</title>
</head>
<body>
<h1>Products</h1>
<ul>
@foreach($products as $product)
<li>{{ $product->name }} - ${{ $product->price }}</li>
@endforeach
</ul>
<form action="{{ route('products.store') }}" method="POST">
@csrf
<input type="text" name="name" placeholder="Product Name">
<input type="text" name="price" placeholder="Product Price">
<textarea name="description" placeholder="Product Description"></textarea>
<button type="submit">Add Product</button>
</form>
</body>
</html>{}
🚩Плюсы
➕Разделение обязанностей
Разделяет приложение на три компонента, каждый из которых отвечает за свою задачу. Это упрощает поддержку и масштабирование кода.
➕Улучшенная тестируемость
Разделение логики позволяет легко тестировать каждую часть приложения отдельно.
➕Гибкость и переиспользование
Компоненты MVC могут быть легко изменены или переиспользованы в других частях приложения или в других проектах.
➕Чистота и упорядоченность кода
Способствует созданию чистого и упорядоченного кода, что упрощает работу в команде и ускоряет разработку.
Ставь 👍 и забирай 📚 Базу знаний271
12:05
13.09.2025
imageИзображение не доступно для предпросмотра
📺 Уникальная база IT собеседований
456+ реальных собеседований на программиста, тестировщика, аналитика и прочие IT профы.
Есть собесы от ведущих компаний: Сбер, Яндекс, ВТБ, Тинькофф, Озон, Wildberries и т.д.
🎯 Переходи по ссылке и присоединяйся к базе, чтобы прокачать свои шансы на успешное трудоустройство!
286
14:10
13.09.2025
🤔 Что такое алгоритмическая сложность?
Алгоритмическая сложность описывает эффективность алгоритма в зависимости от объёма входных данных. Измеряется во времени выполнения (Time Complexity) и потреблении памяти (Space Complexity).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
311
19:10
13.09.2025
🤔 Что реализует класс Datetime?
Класс
DateTime
в PHP предоставляет удобные инструменты для работы с датами и временем. Он заменяет устаревшие функции date()
, strtotime()
и делает код более читаемым и гибким.
🚩Что умеет `DateTime`?
Создавать даты и время.
Изменять, прибавлять, вычитать дни, месяцы, годы.
Преобразовывать дату в строку (format()
).
Работать с часовыми поясами (DateTimeZone
).
Сравнивать даты (diff()
).
Преобразовывать в Unix Timestamp (getTimestamp()
).
🚩Примеры использования `DateTime`
1⃣Создание объекта DateTime
$date = new DateTime(); // Текущая дата и время
echo $date->format('Y-m-d H:i:s'); // 2025-02-24 15:30:00{}
2⃣Создание DateTime
с конкретной датой
$date = new DateTime('2023-12-31 23:59:59');
echo $date->format('d.m.Y H:i'); // 31.12.2023 23:59{}
3⃣Прибавить / Вычесть дни, месяцы, годы (modify()
)
$date = new DateTime('2024-01-01');
$date->modify('+1 month'); // Добавить 1 месяц
echo $date->format('Y-m-d'); // 2024-02-01
$date->modify('-10 days'); // Вычесть 10 дней
echo $date->format('Y-m-d'); // 2024-01-22{}
4⃣Разница между датами (diff()
)
$date1 = new DateTime('2024-01-01');
$date2 = new DateTime('2025-01-01');
$diff = $date1->diff($date2);
echo $diff->days; // 366 (разница в днях)
echo $diff->y; // 1 (разница в годах){}
5⃣Работа с часовыми поясами (DateTimeZone
)
$date = new DateTime('now', new DateTimeZone('America/New_York'));
echo $date->format('Y-m-d H:i:s'); // Время в Нью-Йорке{}
6⃣Преобразование DateTime
в Timestamp (getTimestamp()
)
$date = new DateTime('2024-01-01');
echo $date->getTimestamp(); // 1704067200 (Unix-время){}
7⃣Создание DateTime
из Timestamp (setTimestamp()
)
$date = new DateTime();
$date->setTimestamp(1704067200);
echo $date->format('Y-m-d H:i:s'); // 2024-01-01 00:00:00{}
Ставь 👍 и забирай 📚 Базу знаний312
12:05
14.09.2025
🤔 Что из себя представляет http-запрос?
HTTP-запрос — это сообщение, которое клиент отправляет серверу для выполнения определённой операции, например получения данных (GET) или их отправки (POST). Запрос содержит метод, URL, заголовки и тело запроса (если необходимо). Ответ сервера включает статус выполнения, заголовки и данные (если применимо).
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
324
19:10
14.09.2025
🤔 Что такое агрегат?
Агрегат – это термин, часто используемый в области баз данных и программирования, который обозначает способ группировки данных для выполнения различных операций, таких как суммирование, подсчёт, нахождение среднего значения и другие. В реляционных базах данных агрегаты применяются для выполнения агрегатных функций, таких как
SUM()
, COUNT()
, AVG()
, MAX()
, MIN()
и других.
🚩Зачем нужны?
🟠Анализ данных:
Агрегаты позволяют получить сводные данные, которые помогают анализировать и понимать большие наборы данных. Например, можно узнать общее количество продаж, среднюю стоимость заказа, максимальную и минимальную зарплату сотрудников и т.д.
🟠Оптимизация запросов:
Использование агрегатных функций позволяет выполнять сложные вычисления на сервере базы данных, что экономит время и ресурсы по сравнению с выполнением этих операций на клиентской стороне.
🚩Примеры использования агрегатных функций:
Суммирование (SUM
):
-- Получение общей суммы всех заказов
SELECT SUM(total_amount) AS total_sales
FROM orders;{}
Подсчёт (COUNT
):
-- Подсчёт общего количества заказов
SELECT COUNT(*) AS total_orders
FROM orders;{}
Среднее значение (AVG
):
-- Нахождение средней суммы заказа
SELECT AVG(total_amount) AS average_order_value
FROM orders;{}
Максимальное значение (MAX
):
-- Нахождение максимальной суммы заказа
SELECT MAX(total_amount) AS max_order_value
FROM orders;{}
Минимальное значение (MIN
):
-- Нахождение минимальной суммы заказа
SELECT MIN(total_amount) AS min_order_value
FROM orders;{}
🚩 Группировка данных с использованием GROUP BY:
Для более сложных запросов можно использовать агрегатные функции вместе с оператором GROUP BY
, чтобы группировать данные по определённому критерию. В этом запросе результаты будут сгруппированы по customer_id
, и для каждого клиента будет рассчитана общая сумма заказов.
-- Получение общей суммы заказов для каждого клиента
SELECT customer_id, SUM(total_amount) AS total_sales_per_customer
FROM orders
GROUP BY customer_id;{}
Ставь 👍 и забирай 📚 Базу знаний247
12:05
15.09.2025
🤔 Реализация Fibonacci с рекурсией или без?
1. С рекурсией: проще написать, но требует больше памяти из-за вложенных вызовов.
2. Без рекурсии: итеративный метод или использование динамического программирования, эффективнее с точки зрения производительности.
3. Выбор зависит от задачи: рекурсия подходит для демонстрации, итерация — для практических целей.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚 Базу знаний
172
19:10
15.09.2025
close
С этим каналом часто покупают
Отзывы канала
Отзывов нет
Новинки в тематике
Лучшие в тематике
keyboard_double_arrow_left
shopping_cart
Каналов:
0
Подписчиков:
0
Просмотров:
lock_outline
Итого:
0.00₽
Перейти в корзину
Очистить корзину
Вы действительно хотите очистить корзину?
Вы снова сможете добавить каналы в корзину из каталога
Вы снова сможете добавить каналы в корзину из каталога
Очистить
Отменить
Комментарий