Файл: Опорний конспект.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 24.05.2024

Просмотров: 209

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

1. Історія php

2. Можливості php

3. Установка і настройка по

3.1. Установка Apache 1.3.29 під Windows xp

3.2. Установка php 4.3.4 під Windows

1. Основний синтаксис

1.1 Розділення інструкцій

1.2 Коментарі

2. Змінні, константи і оператори

2.3 Константи

2.4 Оператори

1.2 Оператор else

1.3 Оператор elseif

1.4 Оператор switch

2 Цикли

3 Оператори передачі управління

4 Оператори включення

4. Лекція

2 Типи серверів

3 Протокол http і способи передачі даних на сервер

4 Методи

5 Використання html-форм для передачі даних на сервер

5. Лекція:

1 Функції, створені користувачем

2 Аргументи функцій

3 Списки аргументів змінної довжини

4 Статичні змінні

5 Значення, що повертаються

6 Повернення посилання

7 Внутрішні (убудовані) функції

6. Лекція:

2 Ініціалізація змінних

4 Спадкування extends

5 Оператор ::

6 Оператор parent

7. Лекція:

1 Масиви

2 Операції з масивами

3 Функції обробки масивів

4 Сортування масивів

5 Виділення підмасива

8. Лекція:

5 Виділення підмасива

Функція array_slice

Оскільки масив - це набір елементів, цілком імовірно, буде потрібно виділити з нього який-небудь піднабір. В PHP для цих цілей є функція array_slice . Її синтаксис такий:

array_slice (масив, номер_елемента [, довжина])

Ця функція виділяє підмасив довжини довжина в масиві масив, починаючи з елемента, номер якого заданий параметром номер_елемента. Позитивний номер_елемента вказує на порядковий номер елемента відносно початку масиву, негативний - на номер елемента з кінця масиву.

<?php

$arr = array(1,2,3,4,5);

$sub_arr = array_slice($arr,2);

print_r($sub_arr);

/* виведе Array ( [0] => 3 [1] =>4 [2] => 5 ), тобто підмасив, що складається з елементів 3, 4, 5 */

$sub_arr = array_slice($arr,-2);

print_r($sub_arr);

// виведе Array ( [0] => 4 [1] => 5 ), тобто підмасив, з елементів 4, 5

?>

Приклад 7.13. Використання функції array_slice()

Якщо задати параметр довжина при використанні array_slice , то буде виділений підмасив, що має рівно стільки елементів, скільки задано цим параметром. Довжину можна вказувати й негативну. У цьому випадку інтерпретатор видалить із кінця масиву число елементів, рівне модулю параметра довжина.

<?php

$arr = array(1,2,3,4,5);

$sub_arr = array_slice($arr, 2, 2);

// містить масив з елементів 3, 4

$sub = array_slice($arr,-3, 2);

// теж містить масив з елементів 3, 4

$sub1 = array_slice($arr,0, -1);

// містить масив з елементів 1, 2, 3, 4

$sub2 = array_slice($arr,-4, -2);

// містить масив з елементів 2, 3

?>

Приклад 7.14. Використання функції array_slice(). Варіант 2

Функція array_chunk

Є ще одна функція, схожа на array_slice() - це array_chunk() . Вона розбиває масив на декілька підмасивів заданої довжини. Синтаксис її такий:

array_chunk ( масив, розмір [, зберігати_ключі])

У результаті роботи array_chunk() повертає багатомірний масив, елементи якого являють собою отримані підмасиви. Якщо задати параметр зберігати ключі як true, то при розбивці будуть збережені ключі вихідного масиву. У противному випадку ключі елементів заміняються числовими індексами, які починаються з нуля.

Приклад 7.15.У нас є список запрошених, оформлений у вигляді масиву їхніх прізвищ. У нас є столики на три персони. Тому потрібно розподілити всіх запрошених по три.


<?php

$persons = array("Іванов", "Петров", "Сидорова", "Зайцева", "Волкова");

$triples = array_chunk($persons,3);

// ділимо масив на підмасиви по три елемента

foreach ($triples as $k => $table){

// виводимо отримані трійки

echo "За столиком номер $k сидять: <ul>";

foreach ($table as $pers)

echo "<li>$pers";

echo "</ul>";

}

?>

Приклад 7.15. Використання функції array_chunk()

У результаті одержимо:

за столиком номер 0 сидять:

• Іванов

• Петров

• Сидорова

за столиком номер 1 сидять:

• Зайцева

• Волкова

Сума елементів масиву

У цьому розділі ми познайомимося з функцією, що обчислює суму всіх елементів масиву. Саме завдання обчислення суми значень масиву гранично просте. Але навіщо писати зайвий раз той самий код, якщо можна скористатися спеціально створеною й завжди доступною функцією. Функція ця називається, як можна догадатися, array_sum() . І як параметр їй передається тільки ім'я масиву, суму значень елементів якого потрібно обчислити.

Як приклад використання цієї функції приведемо рішення більше складного завдання, чим просте обчислення суми елементів. Цей приклад також ілюструє застосування функції array_slice(), що ми обговорювали декілька раніше.

Приклад 7.16.Нехай даний масив натуральних чисел. Потрібно знайти в ньому таке число, що сума елементів праворуч від нього дорівнює сумі елементів ліворуч від нього.

<?php

//масив задається функцією array

$arr = array(2,1,3,4,5,6,4);

/* перебираємо кожен елемент масиву $arr. Усередині циклу поточний ключ масиву утримується в змінної $k, поточне значення - у змінної $val */

foreach ($arr as $k => $val){

$p = $k + 1;

/* синтаксис array array_slice (array array,int offset [,int length]) array_slice виділяє підмасив довжини length у масиві array, починаючи з елемента offset. */

$out_next = array_slice($arr,$p);

// одержуємо масив елементів, що йдуть після поточного

$out_prev = array_slice($arr,0,$k);

/* одержуємо масив елементів, що йдуть перед поточного функція mixed array_sum (array array) підраховує суму елементів масиву array */

$next_sum = array_sum($out_next);

$prev_sum = array_sum($out_prev);

/* якщо сума елементів до поточного дорівнює сумі елементів після, те виводимо значення поточного елемента */

if ($next_sum==$prev_sum)


echo "value:$val";

echo "<hr>";

}

?>

Приклад 7.16. Програма пошуку числа, такого що сума елементів праворуч від нього дорівнює сумі елементів ліворуч від нього

Висновок

Отже, підведемо підсумки. У цій лекції ми вивчили ряд функцій, що спрощують роботу з масивами даних. Ми розглянули функції для пошуку значення серед елементів масиву; функції для сортування елементів масиву, як по їхніх значеннях, так і по ключах ; функції, що дозволяють застосовувати до всіх елементів масиву функцію, створену користувачем. Крім того, ми вивчили функцію, що виділяє підмасиви з елементів масиву, і функцію, що обчислює суму всіх елементів масиву. Використання всіх цих функцій було продемонстровано на прикладах. Всі функції для роботи з масивами доступні без яких-небудь конфігураційних настроювань PHP, і користуватися ними можна абсолютно вільно. Так що, перш ніж винаходити велосипед, загляньте в посібник з мови PHP: - цілком можливо, що хтось зробив це до вас.


8. Лекція:

Тема: Робота з рядками

Мета: детально обговорити питання роботи з рядками, вивчити функції, корисні для вирішення різноманітних прикладних задач. Розглянути різні способи виведення рядків, розбиття і з'єднання рядків (функції explode, implode), визначення довжини рядка (strlen), виділення підрядка (strstr, substr).

  1. Дайте визначення масиву.

  2. Опишіть формальний синтаксис визначення масиву в мові РНР.

  3. Які операції можна здійснити з масивами?

  4. Опишіть механізм роботи операції складання масивів. Який її результат?

  5. Поясніть поняття рівності масивів.

  6. Поясніть поняття еквівалентності масивів.

  7. За допомогою яких функцій можна опрацьовувати масиви? Що мається на увазі під обробкою масиву?

  8. Яка функція підраховує кількість елементів в масиві?

  9. Яка функція перевіряє наявність величини в масиві?

  10. Яка функція дозволяє визначити ключ шуканого елемента?

  11. Яка функція дозволяє вибрати всі ключі масиву?

  12. Яка функція дозволяє відсіяти з масиву повторювані значення?

  13. Які функції дозволяють здійснити сортування масивів?

  14. За якими принципами можна сортувати масиви в РНР?

ПЛАН

1 Рядки

2 Пошук елемента в рядку

3 Виділення підрядка

4 Заміна входження підрядка

Рядки

Ймовірно, всі приблизно представляють, що таке тип даних " рядок " і як створити змінну такого типу. В одній з перших лекцій ми приводили три способи завдання рядків: за допомогою одинарних лапок, подвійних лапок і за допомогою heredoc –синтаксиса. Відзначали ми і основні відмінності між цими способами. В основному вони торкаються обробки змінних і управляючих послідовностей усередині рядка.

<?php

echo 'В такому рядку не обробляються змінні і більшість послідовностей;

echo "Тут змінні і послідовності обробляються";

echo <<<EOT

Тут теж обробляються як змінні

так і управляючі послідовності.

І крім того, можна вводити символи лапок

без їх екранування зворотним слешем.


EOT;

?>

Приклад 8.1. Способи завдання рядків

Вже не раз, починаючи з найпершої лекцієї, ми використовували функцію echo. Насправді, echo – не функція, а мовна конструкція, тому використовувати при її виклику круглі дужки не обов'язково. Echo дозволяє виводити на екран рядок, переданий їй як параметр. Параметрів у echo може бути скільки завгодно. Їх розділяють комами або об'єднують за допомогою оператора конкатенації і ніколи не беруть в круглі дужки.

<?

echo "Прийшов ", "побачив ", "переміг ";

// виведе рядок "Прийшов побачив переміг"

// багато хто вважає за краще передавати кілька

// параметрів в echo за допомогою конкатенації

echo "Прийшов " . "побачив " . "переміг ";

// теж виведе рядок

// "Прийшов побачив переміг"

echo ("прийшов ", "побачив ", "переміг ");

// видасть помилку: unexpected ','

?>

Приклад 8.2. Використовування функції echo

Існує скорочений синтаксис для команди echo :

<?=рядок_для_виводу?>

Тут параметр рядок_для_выводу містить рядок, заданий будь-яким з відомих способів, який повинен бути виведений на екран.

Наприклад, такий скрипт виведе на екран червоним кольором "Мене звуть Вася":

<? $name="Вася" ?>

<font color=red>Меня звуть <?=$name?></font>

Окрім мовної конструкції echo існує ряд функцій для виведення рядків. Це в першу чергу функція print і її різновиди printf, sprintf і т.п.

Функція print дозволяє виводити на екран тільки один рядок і, як і echo, не може бути викликана за допомогою змінних функцій, оскільки є мовною конструкцією.

Функція print_r не відноситься до рядкових функцій, як можна було б подумати. Вона відображає інформацію про змінну у формі, зрозумілій користувачу.

Пошук елемента в рядку

Для того, щоб визначити, чи входить даний підрядок до складу рядка, використовується функція strpos() . Синтаксис strpos() такий:

strpos (початковий рядок, рядок для пошуку [,з якого символу шукати])

Вона повертає позицію появи шуканого рядка в початковому рядку або повертає логічне false, якщо входження не знайдено. Додатковий аргумент дозволяє задавати символ, починаючи з якого проводитиметься пошук. Окрім логічного false ця функція може повертати і інші значення, які приводяться до false (наприклад, 0 або ""). Тому для того, щоб перевірити, чи знайдений шуканий рядок, рекомендують використовувати оператор еквівалентності " === ".