Чтение онлайн

ЖАНРЫ

Задачник по PHP (с решениями)
Шрифт:

и на 12%, если выбрана Италия. И далее это число уменьшается на 5%, если указана

скидка.

1. <html>

2. <head>

3. <meta charset="utf-8" />

4. <title>Название странички</title>

5. </head>

6. <body>

7.

8.

9. <?php

10.

echo '<pre>';

11.

print_r($_POST);

12.

echo '</pre>';

13.

if (isset($_POST['hero']))

14.

{

15.

if($_POST['hero'] == 1)

16.

{

17.

if(isset($_POST['b']))

18.

{

19.

echo"

в Италию со скидкой ". ($_POST['a']*400*1.12*0.95);}

20.

else{echo" в Италию без скидки ". ($_POST['a']*400*1.12);}

21.

}

22.

elseif( $_POST['hero'] == 2){

23.

if(isset($_POST['b'])){

24.

echo" в Грецию со скидкой". ($_POST['a']*400*1.1*0.95);}

25.

else{echo"Греция без скидкии".($_POST['a']*400*1.1);}

26.

}

27.

elseif($_POST['hero'] == 3){

28.

if(isset($_POST['b'])){

29.

echo" в Россию со скидкой". ($_POST['a']*400*0.95);}

30.

else{echo"Poccия без скидкии".($_POST['a']*400);}

31.

}

32.

}

33.

?>

34.

<form method="post">

35.

36.

<select name="hero"><option>выбирайте страну из списка </option> 37.

<option value="1">Италия</option>

38.

<option value="2">Греция</option>

39.

<option value="3">Россия</option>

40.

</select>

41.

<b>сколько дней отдыха?</b>

42.

<input type="text" name="a" />

43.

<b>есть ли у вас скидка?</b>

44.

<input type="checkbox" name="option" value="b"><Br> 45.

<input type="submit" value="Отправить">

46.

</form>

47.

48.

49.

</body>

50.

</html>

2) Массивы в PHP

2.1 Массивы

Дан массив с элементами 'Привет, ', 'мир' и '!'. Необходимо вывести на экран

фразу 'Привет, мир!'.

1. <?php

2. //Выведем фразу 'Привет, мир!':

3. $arr = ['Привет, ', 'мир', '!'];

4. echo $arr[0].$arr[1].$arr[2];

5. ?>

Слово 'Привет, ' хранится под номером 0, это значит, что для доступа к нему

мы должны написать $arr[0].

Для доступа к слову 'мир' мы должны написать $arr[1], а $arr[2] содержит в

себе '!'. Далее с помощью оператора 'точка' мы сложим три наши строки ('Привет, ',

'мир' и '!') в одну

строку таким образом: $arr[0].$arr[1].$arr[2], и выведем на экран

с помощью echo.

Задача. Решим немного другую задачу: дан массив с элементами 'Привет, ',

'мир' и '!'. Необходимо записать в переменную $text фразу 'Привет, мир!', а затем

вывести на экран содержимое этой переменной.

1. <?php

2. $arr = ['Привет, ', 'мир', '!'];

3. $text = $arr[0].$arr[1].$arr[2];

4. /*

5.

В переменной $text теперь лежит строка 'Привет, мир!'.

6.

Выведем ее на экран:

7. */

8. echo $text;

9. ?>

Дан массив ['Привет, ', 'мир', '!']. Необходимо записать в первый элемент (то

есть элемент с номером ноль) этого массива слово 'Пока, ' (то есть вместо

слова 'Привет, ' будет 'Пока, ' ).

1. <?php

2. $arr = ['Привет, ', 'мир', '!'];

3. $arr[0] = 'Пока, '; //перезапишем первый элемент массива

4. var_dump($arr); //посмотрим на массив и убедимся в том, что он изменился

5. ?>

Дан массив с числами. Запишите в новый массив только те числа, в которых

есть цифра 5.

1. <?php

2.

3. function getFives($sArr, String $sInt) {

4. $result = [];

5.

6. foreach ($sArr as $item)

7. if (strpos(strval($item), $sInt) !== false) $result[] = $item; 8. return $result;

9. }

10.

11. $searchInt = 5;

12. $searchArr = [2,1,4,3,5,7,6,9,8,11,10,15,29,25,52,13,51];

13.

14. echo '<pre>';

15. var_dump(getFives($searchArr, $searchInt));

16. echo '</pre>';

17.

?>

Задача «Cтранный массив»*:

Создайте массив вида [1, [2], [[3]], [[[4]]] ], вместо 4 может быть любое целое

значение. К примеру, если 5 – тогда будет массив [1, [2], [[3]], [[[4]]], [[[[5]]]] ].

1. <?php

2. function getMultiArray($level) {

3. $result = $level;

4. for ($i = 1; $i < $level; $i++) {

5. $result = [$result];

6. }

7. return $result;

8. }

9.

10. function strange($value) {

11. $result = [];

12. for ($i = 1; $i <= $value; $i++) {

13. $result[$i] = getMultiArray($i);

14. }

15. return $result;

16.

}

17.

Поделиться с друзьями: