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

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

  • "{${"a"}}"

  • 1

  • $a

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

  • 0

  • 1

  • 12009

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

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

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

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

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

Переменные и типы данных
Дан массив $a = array(1,2,3,4).
Как вывести все элементы массива $a на экран?
  • print_r($a);

  • echo "$a";

  • print_f($a);

  • echo $a;

Пояснение: Правильный ответ - print_r($a);

Операторы и операции
Какие из следующих пар операторов не являются противоположными?
  • &=, |=

  • ==, !=

  • +, -

  • <<, >>

Стандартные функции PHP
Какое из перечисленных выражений может быть корректным?
  • $s = fwrite("a string here");

  • $s = fwrite($fp, "a string here");

  • $s = fwrite("a string here", $fp);

  • Ничего из указанного

Пояснение: Правильное использование метода:
int fwrite ( resource $handle, string $string [, int $length] )

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

  • [0.2]

  • [.2]

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

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

Базовые понятия
Какой результат выполнения данного кода?
<?php 
function byRef(&$apples

  $apples++; 

$oranges = 5
$apples = 5
byRef($oranges); 
echo "У меня есть $apples яблок и $oranges апельсинов"
?> 
  • У меня есть 5 яблок и 5 апельсинов

  • У меня есть 5 яблок и 6 апельсинов

  • У меня есть 6 яблок и 6 апельсинов

  • У меня есть 6 яблок и 5 апельсинов

Синтаксис
Укажите все некорректные способы вывода текста в php5:
  • <?php echo "Plain Text" ?>

  • <script language='php'> echo "Plain Text" </script>

  • <?php echo "Plain text";?>

  • <# echo "Plain text" #> 

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

  • string

  • mixed

  • float

  • integer

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

Переменные и типы данных
Какие из следующих типов данных являются смешанными (compound)?
  • Array

  • Enumeration

  • Integer

  • Object

  • List

Стандартные функции PHP
Дан запрос:
SELECT name FROM some_table LIMIT 1
Какая из ниже перечисленных функций возвращает ассоциативный массив, у которого ключи являются целыми числами?
  • mysql_fetch_array

  • mysql_fetch_assoc

  • mysql_num_rows

  • mysql_fetch_row

Синтаксис
Что выведет данный фрагмент кода:
<?php 
define('FOO'10); 
$array = array(10 => FOO, "FOO" => 20); 
print $array[$array[FOO]] * $array["FOO"]; 
?> 
  • 100

  • 200

  • Сообщение об ошибке

  • 0

Стандартные функции PHP
Какую функцию нужно использовать, для того чтобы сравнить строки с использованием алгоритма "естественного упорядочения":

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

strnatcmp, strnatcasecmp, strnatcmp(), strnatcasecmp()

Управляющие конструкции
Какой результат выполнения скрипта:
<?php 
$a=0
if($b=$a
echo 'One'
else 
echo 'Two'
  • Two

  • Будет выведено сообщение о ошибке

  • One

Операторы и операции
Какой из операторов PHP позволяет определить остаток от целочисленного деления?
  • \

  • mod

  • %

  • //

  • /

Синтаксис
Что будет на экране в результате выполнения данного кода?
<?php 
   $str = "\n\t\x44"
   echo strlen('$str'); 
?>
  • 5

  • 4

  • 8

  • 3

Пояснение: В функцию передается строка '$str', а не значение переменной $str, так как текст заключен в одинарные кавычки.

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

  • serial

  • serialize

  • glue