Операторы вывода и ввода данных

Приоритет операций в PHP

В табл. 4.6.1 приведены приоритеты операций в PHP в порядке увеличения приоритета.

Табл. 4.6.1. Приоритеты операций в PHP (в порядке увеличения приоритета)

Операции
,
or
xor
and
= += -= *= /=.= %= &= |= ^= ~= <<= >>=
?:
||
&&
|
^
&
==!= ===!==
< <= > >=
<< >>
+ -.
* / %
! ~ (int) (float) (string) (array) (object) @
++ --
[
new

Для вывода в Web-страницу и в режиме интерпретатора в PHP используется один из операторов

echo аргумент-1, аргумент-2, …;

или

print аргумент;

Аргументами в операторах echo и print могут быть переменные, выражения, а также значения скалярных переменных. Перед выводом в Web-страницу аргументы вычисляются и преобразуются в строковое представление.

Пример 4.6.51. Использование операторов echo и print:

1. В результате выполнения операторов:

$a = 5;

echo "\nx=", $a + 3, " y=", 3.5," bool=", true;

будет выведена строка

2. В результате выполнения операторов:

$x = 7;

$y = -2;

print "x=".$x." y=".$y;

будет выведена строка

Элементы массива можно выводить в цикле, однако часто более удобно использовать функцию

print_r(выражение [, возврат ])

Первый параметр может быть как скалярным выражением, так и массивом. Если второй параметр не задан или равен false, функция выводит результат на экран. Если второй параметр равен true, функция ничего не выводит на экран, а использует результат как возвращаемое значение.

Пример 4.6.52. Вывод элементов массива с помощью функции print_r():

Следующий фрагмент программы выводит на экран элементы массива:

$a2 = array(5, 12, 32);

print "\n";

print_r ($a2);

Функция выведет содержимое массива в следующем виде:

В режиме интерпретатора ввод данных выполняется с помощью следующего предложения:

имя-переменной = trim(fgets(STDIN));

Если это предложение встречается в сценарии, интерпретатор приостанавливает работу и ждет ввода с клавиатуры. После ввода строки и нажатия клавиши Return (Enter), переменная с именем имя-переменной получает значение введенной строки, и сценарий продолжает выполнение. Функция trim()«обрезает» пробельные символы в начале и в конце строки и необходима, чтобы удалить в конце вводимой строки символ перехода на новую строку, который добавляется в строку при нажатии на клавишу Return (Enter).

Пример 4.6.53. Ввод данных в режиме интерпретатора:

Следующий фрагмент сценария вводит и потом выводит значение переменной $str1:

echo "\nEnter \$str1: ";

$str1 = trim(fgets(STDIN));

echo "\n\$str1='", $str1, "'";

Вывод этого фрагмента может иметь следующий вид:

Данные в сценарий можно ввести, используя параметры при запуске интерпретатора. Первым параметром всегда является имя файла, а второй, третий и следующие параметры – это параметры, вводимые в командной строке. Разделителями между параметрами являются один или несколько пробелов. Если параметр содержит пробел или пробелы он должен быть заключен в двойные кавычки.

Количество введенных параметров в сценарии доступно как значение переменной $argc, а введенные параметры – как элементы массива $argv. Нулевой элемент массива – $argv[0] содержит имя файла сценария, первый элемент $argv[1] – значение первого параметра (если он задан) и т.д.

Пример 4.6.54. Ввод данных с использованием параметров:

В следующем фрагменте сценария выводится количество введенных при запуске сценария параметров, имя файла сценария и значения введенных параметров:

echo "\nNumber of entered parameters: ", $argc - 1;

echo "\nFile name: '", $argv[0], "'";

$x = (int)$argv[1];

$str1 = $argv[2];

echo "\n\$x=", $x, " \$str1='", $str1, "'";

Переменная $x в сценарии трактуется как число, а поскольку вводимый параметр имеет строковое значение, его необходимо явно преобразовать в числовое значение с помощью оператора (int).

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

D:\TestPHP>php Example4-6-54.php 45 "String 1"

Тогда фрагмент сценария выведет следующие строки:


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: