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

Переменные и типы данных
Какой результат выполнения следующего кода?

                        $var = 1 + "-1.3e3";
                        echo $var;
                    
  • -1299

  • 1

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

  • 1-1.3e3

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

  • 17

  • 19

  • 18

  • 20

Операторы и операции
Какой результат выполнения следующего кода?
<?php
                    $a = 3;
                    $b = 2;
                    echo (int)$a / (int)$b;
                    ?>
                    
  • 3

  • 1.5

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

  • 1

  • 2

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

  • exit

  • switch

  • continue

  • return

Операторы и операции
Что выведет интерпретатор при выполнении данного кода?

                    <?php
                    list($value, $array_size) = 0 ? 1 : array("2", "3");
                    echo $value;
                    ?>
                    
  • 3

  • Ничего (пустая строка)

  • Предупреждение (Warning)

  • 2

  • 1

  • Ошибку выполнения(Error)

  • 0

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

  • function &newUser($userName)

  • function $newUser($userName)

  • function _newUser(_$userName)

  • function ::newUser(::$userName)

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

  • print_f($a);

  • print_r($a);

  • echo "$a";

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

Синтаксис
Какой результат выполнения следующего кода?

                    <?php
                    function
                    vec_add (&$a, $b)
                    {
                        $a['x'] += $b['x'];
                        $a['y'] += $b['y'];
                        $a['z'] += $b['z'];
                    }
                    $a = array ('x' => 3, 'y' => 2, 'z' => 5);
                    $b = array ('x' => 9, 'y' => 3, 'z' => -7);
                    vec_add ($a, $b);
                    print_r ($a);
                    ?>
                    
  • Array
    (
      [x] => 9
      [y] => 3
      [z] => -7
    )

  • Array
    (
      [x] => 3
      [y] => 2
      [z] => 5
    )

  • Array
    (
      [x] => 12
      [y] => 5
      [z] => -2
    )

  • Ошибка

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

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

  • integer

  • float

  • char

  • array

  • object

Синтаксис
Для кода:
<?php echo 30 * 5.7; ?>
                    
результатом будет:
  • 171

  • 150.7

  • Выражения не могут использоваться с оператором echo

  • 30 * 5.7

Стандартные функции PHP
Выберите корректные вызовы функции implode()
Примечание: $str - строка, $arr - массив.
  • implode($str);

  • implode($str, $arr);

  • implode($arr, $str);

  • implode($arr);

Базовые понятия
Как получить значение "flavor" если пользователь отправил данную форму:

                    <form name="myform">
                     <select name="flavor">
                      <option value="choc">Chocolate</option>
                      <option value="strb">Strawberry</option>
                      <option value="vnla">Vanilla</option>
                     </select>
                     <input type="submit" name="submit" value="Go"/>
                    </form>
                    
  • $flavor = $_POST["flavor"];

  • $flavor = $GET["flavor"];

  • $flavor = $PUT["flavor"];

  • $flavor = $_GET["flavor"];

  • $flavor = $REQUEST["flavor"];

Синтаксис
Что делает данный кусок кода?

                    for ($j = 0; $j < count ($MyArray); $j++)  {
                      echo ($MyArray[$j]);
                    }
  • Печатает содержимое массива

  • Ничего не меняет и не печатает

  • Добавляет значения в массив

  • Печатает первый элемент массива

  • Меняет все значения в массиве

Стандартные функции PHP
Какая из следующих функций в PHP не относится к файловым?
  • fclose

  • fopen

  • fgets

  • fappend

  • fwrite

Синтаксис
Что выведет данный фрагмент кода:

                    <?php
                    define('FOO', 10);
                    $array = array(10 => FOO, "FOO" => 20);
                    print $array[$array[FOO]] * $array["FOO"];
                    ?>
                    
  • 100

  • 200

  • 0

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

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

  • <%

  • <?php

  • <$

  • <?

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

Управляющие конструкции
Какой результат выполнения следующего кода?

                    <?php
                    for ($i = 0; $i < 5; ++$i) {
                        if ($i == 2) continue;
                        print "$i";
                    }
                    ?>
                    
  • 012345

  • 2

  • 0134

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

  • 0124

  • 134

Пояснение: Потому что часть ++$i / $i++ всегда выполняется после тела цикла. т.е. цикл в задаче аналогичен такому:


                $i = 0;
                while ($i < 5) {
                if ($i != 2) {
                print "$i";
                }
                $i++; // ++$i - неважно
                }
                
Вот если вынести print в заголовок, там можно получить и другой результат:

                for ($i = 0; $i < 5; print ++$i) { } // 12345
                

Стандартные функции PHP
Как из строки $str = "abсdef" получить $str2 = "de"?
Выберите все подходящие варианты.
  • $str2 = substr($str, -2, -2);

  • $str2 = substr($str, 3, -1);

  • $str2 = substr($str, -3, 2);

  • $str2 = substr($str, 3, 2);

  • $str2 = substr($str, 2, 2);

Переменные и типы данных
Что выведет на экран этот скрипт?

                $numeric = 42;
                $type = gettype(gettype($numeric + 0.0));
                echo $type;
                
  • integer

  • string

  • double

  • float

  • mixed

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

Стандартные функции PHP
С помощью, какой функции можно преобразовать текстовое представление даты на английском языке в метку времени Unix?
  • mktime()

  • strtotime()

  • strftime()

  • strptime()