Тест "PHP 5 - Основы"

Базовые понятия
Результат выполнения скрипта?
<?php 
$a = 1
echo "{${"a"}}"
?> 
  • Возникнет сообщение об ошибке

  • 1

  • "{${"a"}}"

  • $a

Операторы и операции
Какой будет результат выполнения следующего кода?
$a = array(158); 
$b = array(372); 
 
if ($a > $b) { 
    echo "158"
elseif ($a < $b) { 
    echo "372"
else { 
    echo "none"

  • 372

  • 158Array

  • 158$a

  • Возникнет ошибка интерпретатора

  • 372$b

  • none

Переменные и типы данных
Что выведет на экран этот скрипт?
$numeric = 42
$type = gettype(gettype($numeric + 0.0)); 
echo $type
  • integer

  • double

  • string

  • mixed

  • float

Пояснение: Правильный ответ string, потому что вложенная функция возвратит строку, которая будет передана в качестве параметра первой функции gettype().

Переменные и типы данных
Что будет выведено следующим кодом?
$a = 3
$arr[] = "TRUE"
$arr = (array$a
echo $arr[0]; 
  • 1

  • TRUE

  • Предупреждение с просьбой определить индекс массива

  • 3

  • "TRUE"

Пояснение: $arr[] = "TRUE"; - это будет нулевой элемент массива $arr.
$arr = (array) $a; - в ходе преобразования типов получится, что задан массив $arr: ([0]=>3), и его нулевой элемент будет перезаписан.

Стандартные функции PHP
Какие функции можно использовать для преобразования массива в строку?
  • serialize

  • serial

  • glue

  • implode

Операторы и операции
В каком порядке будут располагаться ключи в массиве $a после выполнения следующего кода?
$а = аrray(); 
$а[1] = $а[] = $а[2] = truе;
  • 1, 2 (перезапись [2])

  • 1, 0, 2

  • 2, 3, 1

  • 2, 0, 1

  • Ошибка синтаксиса: нельзя считывать из $a[]

Пояснение: Оператор присваивания выполняется справа налево. Сначала создается [2], затем создается автоиндекс 3 (максимальный целочисленный ключ +1), и затем создается [1]. Синтаксической ошибки нет, потому что в $a[1] присваивается значение предыдущего оператора присваивания.

Базовые понятия
Что из этого необходимо соблюдать при работе с базой данных для предотвращения SQL-инъекций?
  • Экранировать все специальные символы прежде чем вставлять данные в SQL-запрос

  • Для хранения строчных данных в базе использовать только колноки типа VARCHAR

  • Пропускать все данные из формы через функцию urlencode()

  • Применять хэш SHA1 на все данные прежде чем вставлять их в базу

  • Обрабатывать функцией addslashes() все данные, полученные из базы

Синтаксис
Основываясь на примере кода, что сделает функция array_walk?
array_walk($array'format_array_values'$some_var); 
  • Применит функцию format_array_values() к каждому елементу $array

  • Вернет следующую пару ключ/значение из массива

  • Отсортирует массив

  • Случайным образом перемешает содержимое массива

  • Вернет наибольшее значение из массива или серию аргументов

Переменные и типы данных
Какого типа данных нет в PHP 5?
  • массив

  • объект

  • Null

  • указатель

Синтаксис
Какой результат выполнения следующего кода?
$a = 10
if($a > 5 OR < 15
  echo "true"
else 
  echo "false"
  • false

  • true

  • Ничего не будет выведено

  • Возникнет синтаксическая ошибка

Базовые понятия
Каким образом объявляется функция, которая возвращает ссылку?
  • function newUser(&userName)

  • function &newUser($userName)

  • function $newUser($userName)

  • function _newUser(_$userName)

  • function ::newUser(::$userName)

Стандартные функции PHP
Выберите все верные утверждения из перечисленных:
  • require_once() подключает и вычисляет внешний файл только если он не был добавлен ранее

  • require() подключает и вычисляет внешний файл

  • include_once() подключает и вычисляет внешний файл только если он не был добавлен ранее

  • include() подключает и вычисляет внешний файл

Операторы и операции
Какой оператор нужно указать для пропуска оставшейся части текущей итерации цикла while() и начала следующей итерации?
  • return

  • exit

  • continue

  • break

  • switch

Синтаксис
Какой результат выполнения следующего кода?
for ($j = 0$j < count($MyArray); $j++) { 
  echo($MyArray[$j]); 

  • Обход массива.

  • Определение запросов в переданный массив.

  • Вызов массива.

  • Вывод содержимого массива.

  • Добавление в массив.

Синтаксис
Дан следующий скелет кода, ваша задача — все заглавные буквы выделить жирным. Какие значения нужно присвоить переменным $XXX и $YYY?
$text="How Now Brown Cow";  
print preg_replace( "/$XXX/" , $YYY , $text); 
  • $XXX = "([A-Z]+)";  
    $YYY = "<strong>/0</strong>"

  • $XXX = "([A-Z]+)";  
    $YYY = "<strong>\\1<\strong>"

  • $XXX = '([^A-Z]+)';  
    $YYY = '<strong>\1</strong>'

  • $XXX = "([A-Z]+)";  
    $YYY = "<strong>\\1</strong>"

  • $XXX = '([a-z]+)';  
    $YYY = '<strong>\1</strong>'

Управляющие конструкции
Какой результат выполнения следующего кода?
<?php 
if (-1print "True"
else print "False"
?> 
  • False

  • True

  • Возникнет ошибка

Переменные и типы данных
Что будет напечатано в результате выполнения следующего кода:
echo (int) '1 марта 2009 г'
  • 1

  • Возникнет ошибка выполнения скрипта

  • 12009

  • 0

Стандартные функции PHP
Какаю функцию необходимо выполнить, чтобы установить постоянное соединение с Open DataBase Connectivity (ODBC) базой данных?
  • odbc_pconnect

  • odbc_prepare

  • odbc_connect

  • odbc_setoption

  • odbc_keep

Стандартные функции PHP
В какой из указанных пар операторов есть недопустимые?
  • +=, *=

  • !==, !===

  • > , >=

  • =, ==

Управляющие конструкции
Какой будет результат?
$k = 0
$p = 0
for($i = 0 ; $i < 3 ; $i++)  
    $k += $i;  
echo $k;  
  
for($i = 0 ; $i < 3 ; ++$i)  
    $p += $i;  
echo $p;  

Правильные ответы: 33