РНР для всіх!

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

Якщо ж Ви хочете придбати паперову копію представлених тут матеріалів, звертайтесь до нашої книгарні.

З повагою, команда розробників eManual.ru

РНР для всіх!

div.main РНР для всіх!

Сьогодні РНР - це потужний кросплатформовий набір засобів, що розташовується на сервері і призначений для обробки спеціального коду, що вбудовується в HTML-сторінку. Завдяки цьому з'являється можливість легко створювати динамічні сайти. Файли, створені таким чином, зберігаються та обробляються на сервері, і коли відвідувач запитує документ із РНР, скрипт обробляється не браузером відвідувача, як, наприклад, Java Script, а сервером, і відвідувачу передаються вже лише результати роботи. Так само працює CGI-програма, написана на С або Perl. Але, на відміну від CGI, код РНР можна вбудовувати у будь-яке місце HTML-сторінки, що є основною перевагою по відношенню до CGI. Крім того, сама мова РНР дуже проста для вивчення і не вимагає будь-яких специфічних знань. Наприклад, особисто мені цілком вистачило досвіду, набутого років десять тому на уроках інформатики у школі, де ми вивчали мову Бейсік на дуже модних та дорогих тоді Ямахах. Незважаючи на таку райдужну характеристику, має РНР і недоліки. Варто відзначити досить повільну (порівняно з програмами на CGI) роботу скриптів РНР, а також складність написання великих та складних програм. Так чиінакше, РНР залишається мовою, що інтерпретується, що неодмінно веде до погіршення продуктивності у випадку дуже великих і складних програм, але, для виконання нескладних маніпуляцій на сайті, РНР — найкращий вибір. Недарма до середини 2000 року РНР використовувався на понад 2,5 мільйонах сайтів!

Як і у будь-якої мови програмування, у РНР є свій синтаксис. Він дуже схожий на синтаксис мови С чи Perl. Програмісти, які пишуть цими мовами, зможуть освоїти РНР буквально за кілька днів. Але навіть якщо Ви ніколи не програмували, РНР піддасться Вам легко та забезпечить базу для переходу на більш складний рівень. Усі команди досить логічні, а правила прості. Синтаксис включає оператори, розділені між собою точкою з комою. Одна з основних помилок програмістів-початківців — відсутність точки з комою між операторами. На щастя, помилки в РНР за замовчуванням видаються на екран (на відміну від CGI, де всі помилки записуються в лог-файл), і знайти їх при певній уважності та досвіді не складе великої праці. Тим більше, що розумний інтерпретатор підкаже номер рядка, в якому сталася помилка.

Виведення на екран і змінні РНР РНР дуже легко дозволяє організувати виведення тексту на екран. Розглянемо приклад скрипту:

Цей скрипт може бути розташований у будь-якому місці HTML-документа, і сам по собі він не несе нічого корисного, тому що тільки виводить на екран фразу "Привіт, світ!" Але таким чином ми знайомимося з однією з найпоширеніших команд РНР – виведення інформації на екран користувача. Щоб надати нашому скрипту корисні функції, давайте познайомимося зі змінними. Змінна характеризується ім'ям, типом та значенням. Ім'я може бути будь-яким і включати цифри, літери англійського алфавіту ідозволені символи (наприклад, символ підкреслення або тире). За типом змінні діляться на цілі, з плаваючою комою та символьними. Значення відповідно до типу може бути практично будь-яким. Наприклад, змінна a=5. Це говорить нам про те, що ім'я у змінної – а, тип – цілочисленний, значення – 5. Ось ще приклади імен та значень:

Як бачите, всі змінні в РНР (але не тільки в ньому) повинні починатися із символу $, що дозволяє інтерпретатору безпомилково відрізняти їх від команд РНР. У першому рядку нашого скрипта змінної $name надається значення 6, і ця змінна автоматично стає цілою. До речі, заздалегідь описувати тип змінної не потрібно, як у мовах Pascal або Visual Basic, але хоча поділ на типи чисто умовний, кожна змінна автоматично прагне використовувати правильний тип відповідно до значення. Другий рядок коду надає змінній $h12 значення 4.89, яке є значенням з плаваючою комою. Третій і четвертий рядки коду надають своїм змінним значення, що є символьними рядками. Все, що укладено в лапки (включаючи цифри), буде інтерпретовано як символьний рядок. Якщо змінні не визначені раніше, але використовуються, їх значення приймається рівним або нулю, або порожньому рядку в залежності від типу. вказати змінну для результату, знак рівності та перерахувати у природному порядку змінні або значення з необхідними арифметичними знаками. Приклад:

Результат роботи скрипта - виведення на екран цифри 4. Підтримуються всі арифметичні операції та функції, багаторівневі дужки, логічні операції, операціїзбільшення чи зменшення на одиницю та багато іншого. Крім того, дуже просто і природно організується порівняння якщо — інакше. Для цього в РНР застосовується конструкція if() < >else < >. Є різні варіанти синтаксису цього оператора, але цей — основний і найлогічніший з усіх. (якщо) if (умова) (то) < виконується те, що укладено в лапки >(інакше) else < виконується те, що укладено в лапки >. Після лапок ставити крапку з комою, як завжди між операторами, не обов'язково. Але всередині лапок — поділ операторів між собою проводиться лише через крапку з комою. Допускається вкладення кількох операторів перевірки один на один. В цьому випадку треба бути дуже уважним до кількості лапок, що закривають, так як при відсутності навіть однієї інтерпретатор видасть помилку коду. Розглянемо нескладний приклад:

При порівнянні на істину застосовується два знаки рівності для того, щоб інтерпретатор міг легко відрізнити порівняння від присвоєння. Результат роботи скрипта - 95, тому що $a не дорівнює $b, а команда echo $b.$a; (Між змінними стоїть точка, а не знак арифметичної операції) виводить поспіль зазначені змінні. Нерівність (брехня) позначається символами !=, допустимі всі інші арифметичні та логічні символи та оператори (наприклад, or, and, >,

…початок файлу … … кінець файлу …

…початок файлу … … кінець файлу …

Як бачите, ще простіше. Але відразу хочу застерегти Вас, що цей метод хоч і простіший за перший, але відкриває шлях до отримання інформації про сервер, де розташований сайт з такою організацією структури. Зловмисник або просто цікава людина за наявності певних обставин і знань зможе багато дізнатися про ваш сервер, а це відкриває прямий шлях до злому. Тож будьтеобережні та не станьте причиною великих неприємностей. Захиститись від подібних проблем можна, але це вже зовсім інша історія.

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

Алгоритм цього скрипта дуже простий. У першому рядку ми присвоюємо вибраній змінній ім'я файлу, де зберігатиметься кількість відвідувань. У другій – відкриваємо з'єднання з цим файлом для читання. Далі перевіряємо успішність з'єднання, і якщо файл існує і він доступний для читання, зчитуємо з нього рядок з 10 байт, чого більш ніж достатньо для лічильника, і закриваємо з'єднання з файлом. Збільшуємо показ лічильника на одиницю і виводимо його нове значення на екран. На наступному етапі потрібно записати нове значення лічильника, і для цього ми знову відкриваємо з'єднання (дескриптор) з файлом, але вже на запис з очищенням вмісту файлу. Якщо воно успішне – записуємо туди нове значення лічильника та закриваємо дескриптор файлу. От і все.