Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Web-программирование и базы данных. Учебный практикум

.pdf
Скачиваний:
0
Добавлен:
12.08.2026
Размер:
967 Кб
Скачать

Упражнение 2.31. Вывод элементов массива с помощью цикла

<html>

<head>

<title>array</title>

</head>

<body>

работа с массивом <br />

вывод количества элементов в цикле

<?php //ЗАДАНИЕ

//Запишите в описании массива фамилии 7 фамилий //однокурсников из вашей группы; //поместите вашу фамилию первой;

//обеспечьте вывод в цикле нужного количества элементов // (с использованием переменной $n)

//

$fams = array(«Иванов», «Петров», «Сидоров»);

$n=count($fams); //находим число элементов echo «число элементов в массиве = «, $n, «<br />»;

//Вывод элементов массива в цикле for($i = 0; $i<3; $i++)

{

echo $i.” “.$fams[$i].”<br/>”;

}

//

?>

</body>

</html>

При выводе массива можно использовать цикл, обращаясь внутри цикла к элементам с помощью индексов и функции echo. При использовании цикла for полезно использовать функцию count, чтобы получить количество элементов в массиве.

71

Упражнение 2.32. Использование ассоциативного массива

<html>

<head>

<title>array</title>

</head>

<body>

работа с ассоциативным массивом <br /> <?php

//Индексами могут быть строки. В этом случае //массив называется ассоциативным

//ЗАДАНИЕ //Запишите в описании массива информацию о себе

// должно быть пять элементов массива

//Обеспечьте вывод всех элементов с их названиями с помощью echo

//

$fams = array(“name”=>”Иванов”, “age”=>19 );

//Вывод целиком массива в отформатированном виде echo “<pre>”;

print_r($fams) ; echo “</pre>”;

//Вывод отдельных элементов echo $fams[“name”],”<br />”; cho $fams[“age”],”<br />”;

?>

</body>

</html>

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

72

Упражнение 2.33. Функция без аргументов на примере вывода одной строки

<html>

<head>

<title>function</title>

</head>

<body>

работа с функциями <br /> функция без аргументов <br /> <br />

функции служат для многократного использования кода <br /> сокращают текст программы, делают его более структурным и удобочитаемым <br />

<br /> <?php //ЗАДАНИЕ

//Изучите работу функции без аргументов, //которая только выводит текст в браузер //Измените строку выводимого текста

//

function soob() //заголовок функции

{

echo «все хорошо <br />»; //тело функции

}

soob(); //первый вызов функции soob(); //второй вызов функции soob(); //третий вызов функции

?>

</body>

</html>

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

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

73

Упражнение 2.34. Функция без аргументов на примере вывода нескольких строк

<html>

 

 

<head>

 

 

<title>function</title>

 

</head>

 

 

<body>

 

 

работа с функциями <br />

 

функция без аргументов <br />

<br />

 

 

функции служат для многократного использования кода <br />

сокращают текст программы, делают его более структурным и

удобочитаемым <br />

 

<br />

 

 

<?php

 

 

//ЗАДАНИЕ

 

//Изучите работу функции без аргументов,

//которая только выводит текст в браузер

//Измените выводимый текст

//

 

 

function soob() //заголовок функции

{

 

//тело функции

echo «все хорошо <br />»;

echo «все хорошо <br />»;

//тело функции

echo «все хорошо <br />»;

//тело функции

}

//первый вызов функции

soob();

soob();

//второй вызов функции

soob();

//третий вызов функции

?>

 

 

</body>

 

</html>

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

74

Упражнение 2.35. Функция с передачей аргумента

<html>

<head>

<title>function</title>

</head>

<body>

работа с функциями<br /> функция с аргументами<br /> <br />

<?php //ЗАДАНИЕ

//Изучите работу функции с передачей аргумента, //которая только выводит текст в браузер //Добавьте еще вызовы функции, чтобы // вывелся текст «все хорошо прекрасная маркиза» function soob($txt) //заголовок функции

{

echo $txt;

echo «<br />»; //тело функции

}

soob(«все»); //первый вызов функции soob(«хорошо»);//второй вызов функции

?>

</body>

</html>

В этом упражнении показана работа функции с передачей текстового аргумента, которая этот аргумент выводит с помо-

щью echo.

75

Упражнение 2.36. Оператор return для возврата из функции значения

<html>

<head>

<title>function</title>

</head>

<body>

работа с функциями <br />

для возврата из функции значения используется оператор return <br /> <br />

<?php //ЗАДАНИЕ

//Изучите работу функции с использованием return,

//Вычислите прирост в %, когда новая цена 1300, 1500, 1700, 2000

//

function pri($old,$new) // вычисляет прирост в процентах

{

$p=100*($new-$old)/$old; return $p;

}

//

$z1=1000; $z2=1200;

echo “старая цена = “,$z1,”<br />”; echo « новая цена = «, $z2,»<br />»;

echo «прирост цены в процентах = «,pri($z1,$z2),»%<br />»; ?>

</body>

</html>

Функция может не только получать от основной программы аргументы, но и передавать в основную программу результат работы. Для этого служит оператор return.

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

76

Упражнение 2.37. Вычисление цены на основании прироста с помощью функции

<html>

<head>

<title>function</title>

</head>

<body>

работа с функциями <br />

для возврата из функции значения используется оператор return <br /> <br />

<?php //ЗАДАНИЕ

//Изучите работу функции с использованием return,

//Вычислите новую цену, когда прирост цены 30%, 50%, 70%, 100%

//

function newc($old,$proc) // вычисляет новую цену на основании прироста в %

{

$p=$old+$old*$proc/100; return $p;

}

$z1=1000; $z2=20;

echo “старая цена = “,$z1,”<br />”;

echo « прирост цены в процентах = «, $z2,»%<br />»; echo «новая цена = «,newc($z1,$z2),»<br />»;

?>

</body>

</html>

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

77

Упражнение 2.38. Встроенная строковая функция substr

<html>

<head>

<title></title>

</head>

<body>

Функция substr возвращает часть строки<br /> первый аргумент — исходная строка <br />

второй аргумент — номер начального символа (начало с 0, а не с 1)<br />

третий аргумент (необязательный) — количество символов <br /> <br />

ЗАДАНИЕ: <br /> Изучите примеры <br />

Примените функцию substr к строковой переменной $url <br />

для получения подстрок «google»,»google.ru» и «http» <br /> <br />

<?php

echo substr(“abcd”,1,2).”<br />”;//bc $st=”грузите апельсины бочками”; echo substr($st,0,7).”<br />”;//груз echo substr($st,8,9).”<br />”;//апельсины

echo substr($st,8).”<br />”;//апельсины бочками $url=”http://www.google.ru”;

?>

</body>

</html>

В этом упражнении показана работа встроенной функции substr. Функция позволяет выделять подстроки из исходной строки. Первый аргумент — исходная строка, второй аргумент — номер начального символа (начало с 0, а не с 1), третий аргумент (необязательный) — количество символов.

78

Упражнение 2.39. Встроенная строковая функция strstr

<html>

<head>

<title></title>

</head>

<body>

Функция strstr возвращает часть строки<br /> первый аргумент — исходная строка <br />

второй аргумент — подстрока, являющаяся началом результата<br /> <br />

ЗАДАНИЕ: <br /> Изучите примеры <br />

Примените функцию strstr к строковой переменной $url <br /> для получения подстроки «www.google.ru» <br />

<br /> <?php

echo strstr(“abcd”,”b”).”<br />”;//cd $st=”грузите апельсины бочками”;

echo strstr($st,”апельсины”).”<br />”;//апельсины бочками $url=”http://www.google.ru”;

?>

</body>

</html>

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

79

Упражнение 2.40. Встроенная функция isset

<html>

 

 

 

 

<head>

 

 

 

 

<title></title>

 

 

 

 

</head>

 

 

 

 

<body>

 

 

 

 

Функция isset используется для проверки того, что переменная

 

определена. <br />

 

 

 

 

Действия с неопределенными переменными приводят к ошибкам

 

работы программы

 

 

 

 

ЗАДАНИЕ: <br />

 

 

 

 

Попробуйте работу программы <br />

 

 

 

 

Поймите работу программы <br />

 

 

 

 

Вставьте ниже проверку своей переменной, <br />

 

 

 

которой присвойте свое значение<br />

 

 

 

 

<br />

В

этом

упражнении

 

показана работа встроен-

<?php

ной функции isset. Функ-

if (isset($z)) {

ция

isset

используется

echo «переменная определена <br />»;

для проверки того, что

} else {

переменная

определена.

echo «переменная не определена <br />»;

Действия с

неопределен-

}

ными переменными при-

$z=”abc”;

водит к ошибкам работы

if (isset($z)) {

программы.

Поэтому эта

echo «переменная определена <br />»;

функция оказывается по-

} else {

лезной при поиске оши-

echo «переменная не определена <br />»;

бок в программе.

}

 

 

 

 

 

 

 

 

unset($z);//уничтожение переменной, освобождение памяти

 

 

if (isset($z)) {

 

 

 

 

echo «переменная определена <br />»;

 

 

 

 

} else {

 

 

 

 

echo «переменная не определена <br />»;

 

 

 

 

}

 

 

 

 

?>

 

 

 

 

</body>

 

 

 

 

</html>

 

 

 

 

 

 

 

 

 

80