$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
<?php
echo "Plain text";
?>
<?php echo "Plain Text" ?>
<#
echo "Plain text"
#>
<script language='php'> echo "Plain Text" </script>
В Document Root
В любом месте
За пределами Document Root
Пояснение: настройки PHP 5 (php.ini) позволяют include файлов за пределами Document Root
function foo($bar = "baz") {
return $bar;
}
echo foo();
echo foo(null);
echo foo("qux");
bazqux
baz
bazbaz
bazbazqux
baznullqux
<?php
$a = array(1,2,3);
foreach ( $a as $key => &$value ) {
$value = 1;
}
$value = 2;
?>
2,2,2
1,1,1
2,1,1
1,1,2
Пояснение: Ссылка &$value сохраняется после завершения работы foreach
SELECT name FROM some_table LIMIT 1
Какая из ниже перечисленных функций возвращает ассоциативный массив, у которого ключи являются целыми
числами?
mysql_fetch_array
mysql_fetch_assoc
mysql_num_rows
mysql_fetch_row
fclose
fappend
fgets
fopen
fwrite
$a = 3;
$arr[] = "TRUE";
$arr = (array) $a;
echo $arr[0];
"TRUE"
TRUE
1
Предупреждение с просьбой определить индекс массива
3
Пояснение: $arr[] = "TRUE"; - это будет нулевой элемент массива $arr.
$arr = (array) $a; - в ходе преобразования типов получится, что задан массив $arr: ([0]=>3), и его
нулевой элемент будет перезаписан.
<?php echo 30 * 5.7; ?>
результатом будет:
171
30 * 5.7
150.7
Выражения не могут использоваться с оператором echo
require_once()
require()
include()
include_once()
$numeric = 42;
$type = gettype(gettype($numeric + 0.0));
echo $type;
string
float
mixed
double
integer
Пояснение: Правильный ответ string, потому что вложенная функция возвратит строку, которая будет передана в качестве параметра первой функции gettype().
$а = аrray();
$а[1] = $а[] = $а[2] = truе;
1, 2 (перезапись [2])
1, 0, 2
2, 3, 1
2, 0, 1
Ошибка синтаксиса: нельзя считывать из $a[]
Пояснение: Оператор присваивания выполняется справа налево. Сначала создается [2], затем создается автоиндекс 3 (максимальный целочисленный ключ +1), и затем создается [1]. Синтаксической ошибки нет, потому что в $a[1] присваивается значение предыдущего оператора присваивания.
$var = 1 + "-1.3e3";
echo $var;
-1299
Ошибка: невозможно сложить целое число и строку
1
1-1.3e3
<?php
$a = 3;
$b = 2;
echo (int)$a / (int)$b;
?>
2
1
3
1.5
Ошибка интерпретатора
<?php
$i = (string) 0123;
echo (int) $i;
?>
0123
83
123
Синтаксическая ошибка
Пояснение: Число 0123 является восьмиричным. Его десятичное представление - 83.
throw Exception('Houston, we have a problem!');
raise Exception('Houston, we have a problem!');
alert 'Houston, we have a problem!';
call 'Houston, we have a problem!';
throw new Exception('Houston, we have a problem!');
for ($i = 0; $i < 5; $i++) {
if ($i == 2) break;
print ++$i;
}
1
0
13
Сообщение об ошибке
echo '['..2.']';
[2]
[0.2]
[.2]
Ошибка синтаксиса
Пояснение: Вторая точка вместе с двойкой ( .2 ) дает число 0.2, а другие точки есть операторы конкатенции.
include_once()
include()
require_once()
$myarray = urlencode($myarray);
$myarray = serialize($myarray);
$myarray = array_slice($myarray);
$myarray = json_encode($myarray);
$myarray = htmlentities($myarray);