WEB start

Компьютеры. Интернет. Профессиональное обучение. 055-966-10-17

hit 
counter

PHP программирование

Наши преимущества

  • Наши программы обучения ориентированы на конкретного слушателя. Вы можете обучаться по одной из предложенных Вам программ, а можете самостоятельно составить, откорректировать, откорректировать свою персональную программу обучения. Преподаватель, консультант помогают Вам сориентироваться в материале курса при выборе программы обучения.
  • Обучение индивидуальное. Преподаватель проводит занятие только для Вас, ориентируясь на Ваши возможности, предыдущие знания и опыт, скорость восприятия нового материала.
  • Вы учитесь в удобное для Вас время, в удобной для Вас форме, может быть выбран гибкий график занятий, в соответствии с Вашими возможностями и пожеланиями.
  • Обучение проводится дистанционно. Вы можете обучаться, сидя за Вашим компьютером дома или на работе, не тратя время на поездки к месту обучения.


Регистрация на сайте

PHP вывод

Вывод из программы на PHP*

Чаще всего результат работы программы на PHP выводится при помощи команды: echo() или функции: print().

Пример:

<?php $var1 = "Строковая переменная"; $var2 = 99.65; $var3 = -76.98; echo "var1: $var1 <br>","var2: $var2 <br>", "var3: $var3 <br>"; ?>

Результат:

var1: Строковая переменная
var2: 99.65
var3: -76.98

При отладке программы часто используются функции: var_dump() и print_r().

Пример:

<?php $var1 = "Строковая переменная"; $ar1 = [1,2,3,4,5,6]; $ar2 = [1,[11,12,13,14],3,4,5,6]; print_r ($var1); echo "<br>"; print_r ($ar1); echo "<br>"; print_r ($ar2); echo "<br>"; var_dump ($ar1); echo "<br>"; var_dump ($ar2); echo "<br>"; ?>


Результат:

Строковая переменная Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) Array ( [0] => 1 [1] => Array ( [0] => 11 [1] => 12 [2] => 13 [3] => 14 ) [2] => 3 [3] => 4 [4] => 5 [5] => 6 ) F:\Lessons\Tests\PHP\PHP_05-2output.php:11: array (size=6) 0 => int 1 1 => int 2 2 => int 3 3 => int 4 4 => int 5 5 => int 6 F:\Lessons\Tests\PHP\PHP_05-2output.php:13: array (size=6) 0 => int 1 1 => array (size=4) 0 => int 11 1 => int 12 2 => int 13 3 => int 14 2 => int 3 3 => int 4 4 => int 5 5 => int 6

Форматируемый вывод

Часто возникает необходимость форматирования текстовой строки при вводе-выводе. Для этого PHP использует ряд функций, позволяющих предварительно отформатировать строку, наложтв на неё некоторый шаблон - специальную строку формата.

Это, например, функции:  printf(), vprintf(), vsprintf(), fprintf(), vfprintf().

В качестве аргумента эти функции используют строку форматирования и набор переменных, которые нужно отформатировать.

Например: sprintf(format,arg1,arg2,arg++).


Спецификаторы формата

Строка формата состоит из:

  • обычных символов (за исключением %), которые копируются напрямую в результирующую строку, и
  • спецификаторов формата.

Каждый спецификатор формата применяется к соответствующей переменной. Результат выводится в результирующую строку. Такой способ форматирования строки вывода применяется в ряде PHP-функций, например:

sprintf(), printf()

Каждый спецификатор формата (описатель преобразования, форматирования) начинается со знака процент (%), за которым следует один или более дополнительных элементов . Структура строки - спецификатора формата:

%[num][sign][padding][alignment][width][.precision]type

где:

  1. num - необязательный номер аргумента, который должен форматироваться этим спецификатором формата. Если номер не указан, то аргументы форматируются спецификаторами формата в порядке их следования
  2. sign - необязательный описатель знака, указывающий как использовать знак (- или +) в префиксе числа. По умолчанию, используется только знак минус, если число отрицательное. Использование знака "+" приводит к печати знака плюс перед положительными числами
  3. padding - необязательный символ-заполнитель, который определяет, какой символ будет использоваться для дополнения результата до необходимой длины. Это может быть пробел или 0. По умолчанию используется пробел. Альтернативный символ может быть указан с помощью одиночной кавычки (')
  4. alignment - необязательный описатель выравнивания, определяющий выравнивание по левой или правой границе. По умолчанию выравнивается вправо, - используется для выравнивания влево
  5. width - необязательное число, описатель ширины, определяющий минимальное число символов, которое будет содержать результат преобразования
  6. precision - необязательный описатель точности, указанный в виде точки (.), после которой следует необязательная строка из десятичных чисел, определяющая, сколько десятичных разрядов отображать для чисел с плавающей точкой. При использовании со строками этот описатель выступает в роли обрезающей точки, устанавливающей максимальный лимит символов. Также между точкой и цифрой можно указать символ, используемый при дополнении числа
  7. type - Описатель типа, определяющий, как интерпретировать тип данных форматируемой переменной.

    Допустимые типы:

    • % - символ процента. Аргумент не используется.
    • b - аргумент трактуется как целое и выводится в виде двоичного числа.
    • c - аргумент трактуется как целое и выводится в виде символа с соответствующим кодом ASCII.
    • d - аргумент трактуется как целое и выводится в виде десятичного числа со знаком.
    • e - аргумент трактуется как число в в научной нотации (например, 1.2e+2). Описатель точности указывает на количество знаков после запятой, начиная с версии PHP 5.2.1. В более ранних версиях он обозначал количество значащих цифр (на один знак меньше).
    • E - аналогично %e, но использует заглавную букву (например, 1.2E+2).
    • f - аргумент трактуется как число с плавающей точкой и также выводится в зависимости от локали.
    • F - аргумент трактуется как число с плавающей точкой и также выводится, но без зависимости от локали. Доступно, начиная с версии PHP 5.0.3.
    • g - выбирает самую краткую запись из %e и %f.
    • G - выбирает самую краткую запись из %E и %f.
    • o - аргумент трактуется как целое и выводится в виде восьмеричного числа.
    • s - аргумент трактуется как строка.
    • u - аргумент трактуется как целое и выводится в виде десятичного числа без знака.
    • x - аргумент трактуется как целое и выводится в виде шестнадцатеричного числа (в нижнем регистре).
    • X - аргумент трактуется как целое и выводится в виде шестнадцатеричного числа (в верхнем регистре).

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

    Преобразование типов
    Тип Спецификатор
    string s
    integer ducoxXb
    double gGeEfF

    Попытка использовать комбинацию строк и спецификаторов ширины с кодировками, которые требуют более одного байта на символ, может привести к неожиданным результатам.

    Пример:

    <?php $var1 = "Строковая переменная"; $var2 = 99.65; $var3 = -76.98; var_dump ($var1); var_dump ($var2); var_dump ($var3); echo ("Примеры использования функции printf()<br>"); printf("var1: %s <br>",$var1); printf("var2: %f <br>",$var2); printf("var2: %.0f <br>var3: %.5f <br><br> ",$var2,$var3); printf("%%b = %08b <br>",$var2); // Binary number - 8 symbols, emty fields filled with 0 printf("%%d = %d <br>",$var2); // Signed decimal number printf("%%d = %d <br>",$var2); // Signed decimal number printf("%%e = %e <br>",$var2); // Scientific notation (lowercase) printf("%%E = %E <br>",$var2); // Scientific notation (uppercase) printf("%%u = %u <br>",$var2); // Unsigned decimal number (positive) printf("%%u = %u <br>",$var2); // Unsigned decimal number (negative) printf("%%f = %f <br>",$var2); // Floating-point number (local settings aware) printf("%%F = %F <br>",$var2); // Floating-point number (not local settings aware) printf("%%g = %g <br>",$var2); // Shorter of %e and %f printf("%%G = %G <br>",$var2); // Shorter of %E and %f printf("%%o = %o <br>",$var2); // Octal number printf("%%s = %s <br>",$var2); // String printf("%%x = %x <br>","10"); // Hexadecimal number (lowercase) printf("%%X = %X <br>","15"); // Hexadecimal number (uppercase) printf("%%+d = %+d <br>",$var2); // Sign specifier (positive) ?>

    Результат:

    F:\Lessons\Tests\PHP\PHP_05-3output.php:5:string 'Строковая переменная' (length=39) F:\Lessons\Tests\PHP\PHP_05-3output.php:6:float 99.65 F:\Lessons\Tests\PHP\PHP_05-3output.php:7:float -76.98 Примеры использования функции printf() var1: Строковая переменная var2: 99.650000 var2: 100 var3: -76.98000 %b = 01100011 %d = 99 %d = 99 %e = 9.965000e+1 %E = 9.965000E+1 %u = 99 %u = 99 %f = 99.650000 %F = 99.650000 %g = 99.65 %G = 99.65 %o = 143 %s = 99.65 %x = a %X = F %+d = +99


    Пример:

    <?php echo "Символ-заполнитель для строки - * <br>"; $card = '4025888888881881'; printf("Номер Вашей кредитной карты: %'*16s", substr($card, -4)); echo "<br><br>Изменение порядка параметров"; $var1 = -11.98; $var2 = -22.98; $format = '<br> var1 %d, var2 %f'; echo "<br><br>Строка format:". $format ; echo sprintf($format, $var1, $var2); $format = '<br> var2 %2$d, var1 %1$f'; echo "<br><br>Строка format:". $format ; echo sprintf($format, $var1, $var2); ?>


    Результат:

    Символ-заполнитель для строки - * Номер Вашей кредитной карты: ************1881 Изменение порядка параметров Строка format: var1 %d, var2 %f var1 -11, var2 -22.980000 Строка format: var2 %2$d, var1 %1$f var2 -22, var1 -11.980000