Пятница, 29.03.2024
Reklamchik.at.ua
Меню сайта
Категории раздела
Мои статьи [0]
Ucoz [12]
Ucoz
Простий підручник php [7]
Простий підручник php
Мини-чат
500
Наш опрос
Оцените мой сайт
Всего ответов: 2
Статистика

Онлайн усяго: 1
Гостей: 1
Пользователей: 0
Главная » Статьи » Простий підручник php

Визначимо, який браузер використовує той, хто дивиться у даний момент нашу сторінку
Зауваження:
$_SERVER - спеціальна зарезервована мінлива PHP, яка містить всю інформацію, отриману від Web-сервера. Її також називають суперглобальной. Для більш детальної інформації дивіться розділ Суперглобальні змінні. Ці спеціальні змінні з'явилися в PHP, починаючи з версії 4.1.0. До цього використовувались масиви $HTTP_*_VARS, такі як $HTTP_SERVER_VARS. З версії PHP 5.4.0 ці старі змінні видалені (див. зауваження за старими програмами).
Для виводу даної змінної ми зробимо так

Приклад #1 Виведення значення змінної (елемент масиву)

echo $_SERVER['HTTP_USER_AGENT'];
?>
Приклад виводу даної програми:


Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
У PHP існує величезна кількість типів змінних. У попередньому прикладі ми друкували елемент масиву. Масиви можуть бути дуже корисні.

$_SERVER - це просто одна із змінних, які надаються вам мовою PHP. Список таких змінних можна подивитися в розділі "Зарезервовані змінні" або переглянувши висновок функції phpinfo(), використовується в прикладі в попередньому розділі.

Всередину PHP-тегів можна поміщати кілька виразів і створювати маленькі блоки коду, що роблять більше, ніж простий виклик echo. Наприклад, якщо ви хочете додати перевірку для Internet Explorer, можна зробити так:

Приклад #2 Приклад використання керуючих структур і функцій

if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
echo 'Ви використовуєте Internet Explorer.
';
}
?>
Приклад виводу даної програми:

Ви використовуєте Internet Explorer.<br />
Тут ми показали кілька нових елементів. По-перше, тут є конструкція if. Якщо ви знайомі з основами синтаксису мови C, то ви вже помітили щось схоже. Якщо ж ви не знаєте C або подібного з синтаксису мови, то найкращий варіант - взяти якусь вступну книжку по PHP і прочитати перші пару голів. Інший варіант - почитати розділ Опис мови даного керівництва.

Крім цього, тут є виклик функції strpos(). strpos() - вбудована в PHP функція, яка шукає один рядок в інший. В даному випадку ми шукаємо рядок 'MSIE' (так звану "голку" - needle) $_SERVER['HTTP_USER_AGENT'] (у так званому "сене" - haystack). Якщо "голка" знайдено всередині "сіна", функція повертає позицію "голки" щодо початку "сіна". В іншому випадку вона повертає FALSE. Якщо вона не поверне FALSE, то умова в if виявиться істинним (TRUE), і код у фігурних дужках ({ }) виконається. В іншому випадку цей код не виконується. Спробуйте створити аналогічні приклади з використанням команд if, else і інших функцій, таких, як strtoupper() і strlen(). Також подібні приклади містяться в багатьох описах функцій в даному керівництві. Якщо ви не знаєте, як використовувати функції, можливо, вам варто прочитати сторінку керівництва про те, як читати визначення функцій і розділ про функції в PHP.

Продемонструємо, як можна входити в режим коду PHP і виходити з нього навіть прямо посередині блоку з кодом:

Приклад #3 Змішання режимів HTML та PHP

if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
?>
<h3>strpos(), повинно бути, повернув не false</h3>
<p>Ви використовуєте Internet Explorer</p>
} else {
?>
<h3>strpos() повернув false</h3>
<p>Ви не використовуєте Internet Explorer</p>
}
?>
Приклад виводу даної програми:

<h3>strpos(), повинно бути, повернув не false</h3>
<p>Ви використовуєте Internet Explorer</p>
Замість використання команди PHP echo для висновку, ми вийшли з режиму коду і просто послали вміст HTML. Важливий момент тут те, що логічна структура коду PHP при цьому не втрачається. Тільки одна HTML-частина буде надіслана клієнту в залежності від результату функції strpos() (іншими словами, в залежності від того, була знайдена рядок MSIE чи ні).

Зверніть увагу, що в Інтернет Експлорер 11 не містить НЕСУЧАСНО у рядку агента користувача, наприклад на Windows 8 з ie11, я отримую наступне:

Нижче Mozilla/5.0 (вікнах NT 6.3; wow64 буде; і Trident/7.0; RV:11.0) як Гекон

Так що якщо ви хочете включити тест для ie11, приведений вище код зміни: 

якщо (strpos (змінна$_server['HTTP_USER_AGENT'], 'НЕСУЧАСНО') !== Помилкові ||
strpos (змінна$_server['HTTP_USER_AGENT'], 'тризуб') !== Значення false) {
Ехо 'Ви використовуєте Інтернет Експлорер.<бр />';
}
?>

На краю, рядок агента користувача не містить 'НЕСУЧАСНО' ні 'тризуб', а швидше 'край'.

В той час як це легко захопитися змішувати логіку і подання разом з це так легко зробити, ви краще використовувати PHP-код в HTML тільки заповнити значення, або включати інші вихідні файли. 

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


Источник: http://php.net/manual/ru/tutorial.useful.php
Категория: Простий підручник php | Добавил: medergrup (18.02.2017)
Просмотров: 255 | Теги: хто дивиться у даний момент нашу ст, який браузер використовує той, Визначимо | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Вход на сайт

Поиск
Блог
[26.02.2017]
Глава 6 (0)
[27.02.2017]
Глава 23 (0)
[27.02.2017]
Глава 15 (0)
[26.02.2017]
Глава 8 (0)
[27.02.2017]
Глава 21 (0)
Новости
[24.02.2017]
Административный домен (0)
[24.02.2017]
Прозрачность Сертификат (0)
[24.02.2017]
Защищенный компьютер (0)
[24.02.2017]
Хост-системы обнаружения вторжений (0)
[24.02.2017]
Безопасного ввода и обработки документов (0)
Форум
  • Batman: Arkham City Lockdown (0)
  • Рекомендации комментаторам. (0)
  • Нарушения и наказания: ответы на вопросы. (0)
  • Hotline Miami (2012) (0)
  • HITMAN (2015) (0)
  • Reklamchik.at.ua © 2024