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

Переменные и типы данных
Что будет напечатано этим скриптом?
$t = true.false
echo $t
  • Возникнет ошибка

  • 1

  • 0

  • true

  • false

Пояснение: А если подробнее, то при переводе в строку(об этом говорит конкатенация точкой) булевое true превращается в строку "1", а false - в пустую строку.

Переменные и типы данных
Какой результат выполнения следующего кода?
$var = 1 + "-1.3e3";   
echo $var
  • 1

  • 1-1.3e3

  • Ошибка: невозможно сложить целое число и строку

  • -1299

Операторы и операции
Дан фрагмент php кода:
$m = 9
$n = 99
$z = 8
$z = $n++ / $m++ + --$z
echo $z
Каким будет результат его выполнения?
  • 20

  • 16

  • 18

  • 19

  • 17

Синтаксис
Какой код вы выполните, чтобы сделать заглавной (прописной) первую букву в строке, а все остальные буквы – строчными?
  • ucfirst($str);  

  • uc_first($str);  

  • strtoupper($str[0])  

  • ucfirst(strtolower($str));  

  • ucfirst(str_to_lower($str)); 

Синтаксис
Что выведет следующий код?
echo '['..2.']'
  • [2]

  • [0.2]

  • [.2]

  • Ошибка синтаксиса

Пояснение: Вторая точка вместе с двойкой ( .2 ) дает число 0.2, а другие точки есть операторы конкатенции.

Синтаксис
Дан следующий код. Что нужно подкорректировать в строке 3, чтобы он выполнился без ошибок?
1) <?php 
2$newfile = fopen("path/to/new/file/mydata.txt""a+"); 
3) fwrite($newfile ++, "This is a new file."); 
4) fclose($newfile); 
5echo "All done!";                     
  • Убрать ++

  • Поменять ++ на ==

  • Поменять ++ на +=

  • Удалить параметр "This is a new file."

  • Поменять ++ на &&

Базовые понятия
Каким тегом может начинаться PHP код? укажите верные варианты
  • <script language="php">

  • <%

  • <?php

  • <$

  • <?

  • все из перечисленных

Управляющие конструкции
Что выведет следующий код?
$arr = array(1,3,5); 
$count = count($arr); 
if ($count = 0) { 
    echo "Массив пуст."
else { 
    echo "Массив состоит из $count элементов."
}
  • Массив состоит из 0 элементов.

  • Массив пуст.

  • Массив состоит из 3 элементов.

Базовые понятия
В каком элементе содержится имя сервера, которое, как правило, совпадает с доменным именем сайта, расположенного на сервере:
  • $_SERVER['DOCUMENT_ROOT']

  • $_SERVER['REMOTE_HOST']

  • $_SERVER['REMOTE_ADDR']

  • $_SERVER['HTTP_HOST']

Пояснение: В $_SERVER['HTTP_HOST'] находятся данные параметра запроса Host

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

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

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

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

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

Переменные и типы данных
Что выведет скрипт?
function a(&$n) { 
  ++$n

function b($n

  return ( a($n) * $n ); 

function c($n){ 
  a($n); 
  return ($n * $n); 

 
echo b(5); 
echo c(5); 
  • 036

  • 3636

  • 00

  • 360

Стандартные функции PHP
Какая функция ищет последнее вхождение символа в строку?
  • strpos()

  • strrpos()

  • strtr()

  • substr()

Операторы и операции
Что выведет следующий код?
echo 'foo' . 42 + 'bar' . 'qwe'
  • foo42qwe

  • 0

  • 42qwe

  • 0qwe

Пояснение:

Приоритеты операторов + и . одинаковы. Оператор + преобразует строковые операнды в числа, поэтому 'foo42' + 'bar' равно 0.

Операции выполняются по порядку слева направо. При этом каждый раз происходит преобразование типов:
1) 'foo' . 42 => 'foo' . '42' => 'foo42'
2) 'foo42' + 'bar' => 0 + 0 => 0
3) 0 . 'qwe' => '0' . 'qwe' => '0qwe'

Управляющие конструкции
Какую управляющую конструкцию нужно использовать чтобы досрочно выйти из цикла foreach()?
  • break

  • exit

  • switch

  • continue

  • return

Стандартные функции PHP
Какие из перечисленных утверждений верны?
  • time() + 60*60*100 - вернет текущее время плюс один час

  • time() + 24*60*60 - вернет текущее время плюс один день

  • time() + 24*60*60*100 - вернет текущее время плюс один день

  • time() + 24*60*1000 - вернет текущее время плюс один день

  • Ничего из вышеперечисленного

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

  • integer

  • float

  • char

  • array

  • object

Стандартные функции PHP
Какую функцию вы выполните, чтобы вернуть метку времени Unix для заданной даты?
  • mktime  

  • date_sunrise  

  • date_creation  

  • now  

  • get_time 

Стандартные функции PHP
Какую функцию используют, для того чтобы удалить все HTML тэги из строки:
  • addslashes()

  • striphtmlchars()

  • strip_tags()

  • htmlspecialchars()

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

  • function &newUser($userName)

  • function $newUser($userName)

  • function _newUser(_$userName)

  • function ::newUser(::$userName)

Операторы и операции
Что напечатает следующий код?
$x = 1
if ($x == '1') { echo 'a'; }  
if ($x == true) { echo 'b'; } 
if ((bool)$x === true) { echo 'c'; }  
if ($x === true) { echo 'd'; }  
if ((int)$x === true) { echo 'e'; } 
  • ace

  • abc

  • abd

  • de

Пояснение: '===' в отличии от '==' не позволяет автоматически приводить к одному типу данных объекты сравнения.