990 просмотров
от 4 июня 2024
PHP

Вопросы и ответы с собеседований по PHP

Вопросы и ответы с собеседований PHP-разработчиков. Типы данных в PHP, особенности синтаксиса, передача данных по ссылке, реализация парадигмы ООП, предназначение кавычек, устройство сортировки и сборки мусора, генераторы, трейты и многое другое.

1

Какие типы данных есть в PHP?

Хотя PHP это динамический язык, все же все данные в нем имеют четкие типы. Скалярные типы: - bool - int - float (иногда встречается название double что для php не имеет разницы) - string Смешанные типы: - array - object - callable - iterable Специальные типы: - resource - null

Комментарии
0/3000
2

Обязательно ли писать ?> в конце скрипта?

Для файлов, содержащих только PHP-код, закрывающий тег ?> лучше не использовать. Он не требуется синтаксисом PHP и его пропуск предотвращает случайное включение в вывод конечных пробелов.

Комментарии
0/3000
3

В чём разница между === и ==?

1 === 1: true 1 == 1: true 1 === "1": false 1 == "1": true "foo" === "foo": true Оператор == производит приведение операндов к одному типу перед сравнением. Оператор === сравнивает операнды без приведения типов, как есть.

Комментарии
0/3000
4

Что такое ссылка в PHP?

Ссылки в PHP - это средство доступа к содержимому одной переменной под разными именами. Они не похожи на указатели в C - например, вы не можете выполнять над ними адресную арифметику, они не являются реальными адресами в памяти и т.д. Вместо этого указатели в PHP - это псевдонимы в таблице имён переменных.

Комментарии
0/3000
5

Как передать переменную по ссылке?

<?php function foo(&$var) { $var++; } $a = 5; foo($a); // $a здесь равно 6 ?> Вы можете передать переменную по ссылке в качестве аргумента в функцию, чтобы эта функция могла изменять значение переменной. Замечание: В вызове функции отсутствует знак ссылки - он есть только в определении функции. Этого достаточно для корректной передачи аргументов по ссылке. По ссылке можно передавать: - Переменные, например foo($a) - Ссылки, возвращаемые функцией, например: <?php function foo(&$var) { $var++; } function &bar() { $a = 5; return $a; } foo(bar()); ?>

Комментарии
0/3000
6

Для чего нужен ini__set()?

PHP позволяет изменять некоторые из настроек, приведенных в php.ini, с помощью ini_set(). ini__set() принимает два аргумента: первый — это имя параметра, который нужно изменить, а второй — его новое значение. Данный код активирует настройку display_error: ini_set('display_errors', '1'); Нужно поместить приведенный выше код в начало скрипта, чтобы параметр оставался включенным до конца. Кроме того, значения, установленные через ini_set(), применимы только к текущему скрипту.

Комментарии
0/3000
7

Что такое интерфейс в PHP?

Интерфейс в PHP — это конструкция языка, описывающая абстрактный тип данных (АТД). АТД определяет набор операций (функций), независимых от конкретной реализации типа для манипулирования его значениями. На практике интерфейсы содержат определения функций (то есть описание их сигнатур) без их реализации.

Комментарии
0/3000
8

Что такое абстрактный класс?

Абстрактный класс - это так называемый базовый класс, не предназначенный для создания его экземпляров (объектов). Основной смысл и назначение абстрактных классов заключается в расширении возможностей его дочерних классов.

Комментарии
0/3000
9

Поддерживает ли PHP множественное наследование?

Нет, PHP не поддерживает множественное наследование. То есть у производного класса может быть только один родительский. Но с помощью “магической” функции __call() его можно эмулировать.

Комментарии
0/3000
10

Какие есть модификаторы доступа в PHP?

С помощью специальных модификаторов можно задать область видимости для свойств и методов класса. В PHP есть три таких модификатора: public: свойство, метод или конструктор будут доступны для всех классов, которые их используют. protected: может быть использован только в самом классе, а также в его дочерних. private: может быть использован только в самом классе и нигде больше.

Комментарии
0/3000
11

Зачем нужен «static» в PHP?

1. Для объявления статической локальной переменной. 2. Для объявления статического свойства или метода класса. 3. Для реализации позднего статического связывания.

Комментарии
0/3000
Авторизуйтесь, чтобы открыть доступ к контенту
13

Что такое позднее статическое связывание?

14

Что такое PDO?

15

Разница между isset() и empty()?

16

Разница между require и include?

17

Зачем require и include приставка _once?

18

Разница между одинарными и двойными кавычками?

19

Разница между self и $this?

20

Что работает быстрее: преинкремент или постинкремент?

21

Какой алгоритм сортировки используется в PHP для таких функций, как sort и т. д.?

22

Какой алгоритм используется в PHP для сборки мусора?

23

Что такое PSR?

24

Какая разница между echo и print?

25

Что такое магические методы?

26

Что такое генераторы?

27

Что такое трейты?

28

Что такое пространства имён?

29

Что такое сессии?

30

Что такое суперглобальные переменные?

31

Что такое $GLOBALS?

32

Что такое замыкания?

Смежные категории
Базы данных
11 вопросов
Вопросы с собеседований про шардинг баз данных
1227 просмотров
Computer Science
12 вопросов
Вопросы с собеседований про операционные системы
1021 просмотр
Базы данных
10 вопросов
Вопросы с собеседований о репликации баз данных
1411 просмотров
Docker
7 вопросов
Коллекция полезных команд для Docker
1280 просмотров
Computer Science
15 вопросов
Вопросы и ответы с собеседований по DDD
1452 просмотра
Базы данных
60 вопросов
Вопросы и ответы с собеседований по SQL
2221 просмотр
Рекомендуем
Computer Science
12 вопросов
Вопросы с собеседований про операционные системы
1021 просмотр
Git
20 вопросов
Вопросы и ответы с собеседований по Git
1734 просмотра
Computer Science
15 вопросов
Вопросы и ответы с собеседований по DDD
1452 просмотра
Computer Science
13 вопросов
Вопросы и ответы с собеседований про ООП
1146 просмотров
Базы данных
60 вопросов
Вопросы и ответы с собеседований по SQL
2221 просмотр
Computer Science
11 вопросов
Вопросы и ответы про интернет-протоколы
1370 просмотров
Другие разделы

Лента

Активность пользователей Девстанции

Перейти к ленте

Лидеры

Рейтинг самых результативных пользователей сообщества

Перейти к лидерам

Треды

Общение по интересам и связь с разработчиками

Перейти к тредам

Задачи

Решение алгоритмических задач с собеседований

Перейти к задачам

Вопросы

Ответы на вопросы с технических собеседований

Вы находитесь здесь

Викторины

Интерактивные викторины по вопросам с собеседований

Перейти к викторинам
Мы в Telegram
Новости проекта, общение с разработчиками, общение по интересам - присоединяйтесь!