Типы суперглобальных массивов в PHP 5.
⇐ ПредыдущаяСтр 2 из 2 $GLOBALS – содержит ссылку на каждую переменную доступную в данный момент в глобальной области видимости скрипта. $_GET, $_POST – переменные переданные методами GET или POST. $_SESSION – переменные переданные скрипту через механизм сессий. $_COOKIE – переменные переданные скрипту через cookie. $_FILES – параметры файла передаваемые скрипту методом POST. $_ENV – переменные окружения. $_REQUEST – переменные передаваемые скрипту методами GET, POST и через cookie. Наличие и порядок включения переменных в этот массив определяются в соответствии с директивой variables_order. $_SERVER – перменные установленные Web -сервером, либо напрямую связанные с окружением выпонения текущего скрипта. $_SERVER ['REMOTE_ADDR'] - адрес с которого запросили страницу. $_SERVER ['PHP_SELF'] – имя текущей страницы. $_SERVER ['SERVER_NAME'] – имя сервера. $_SERVER ['QUERY_STRING'] – строка запроса. $_SERVER ['HTTP_REFERER'] – страница с которой зашел посетитель (передается пользовательским агентом). $_SERVER ['HTTP_USER_AGENT'] – имя пользовательского агента (передается им же). $_SERVER ['HTTP_ACCEPT_LANGUAGE'] – языковое предпочтение пользовательского агента, определяется по полю заголовка Accept-Language запроса к серверу. Accept-Language: ru, en; q=o.7 - русский язык 70% предпочтения, английский - 30% предпочтения, q - снижение коэффициента предпочтения. $_SERVER[`REQUEST_URI`] - содержит имя скрипта, начиная от корневой директории виртуального хоста и параметры, т.е. если строка запроса представляет собой адрес: http://somesite.com/news/today.php?id=2&id_theme=23 то элемент $_SERVER[`REQUEST_URI`] будет содержать фрагмент «/news/today.php?id=2&id_theme=23″. Для того, чтобы узнать в скрипте полный адрес, который помещен в строку запроса, можно использовать следующую последовательность элементов массива $_SERVER: <?php
HTTP_X_FORWARDED_FOR – переменная окружения позволяющая иногда узнать адреса машин в подсети. <?php 16. Обращение к переменной из формы через суперглобальный массив $_POST. 21. Какие атрибуты используются для тега <form> и что они означают. Синтаксис FORM тэг определяет форму для заполнения в HTML документе. В одном документе может быть определено несколько форм для заполнения, но вложенные FORM операторы не разрешены. Формат оператора FORM выглядит следующим образом: <FORM ACTION="url" METHOD="POST">...</FORM> Его атрибуты следующие: ACTION URL сервера запросов, куда будет отослано содержание формы после подтверждения. Если это поле отсутствует, будет использован URL текущего документа. METHOD HTTP/1.0 метод используемый для посылки содержания заполненной формы на сервер. Этот метод зависит от того, как работает конкретный сервер запросов. Настоятельно рекомендуется использование метода POST. Возможные варианты следующие: § GET - это метод по умолчанию, который приводит к добавлению содержимого заполненной формы к URL, как и в нормальном запросе. § POST при использовании этого метода содержимое заполненной формы пересылается не как часть URL, а как содержимое тела запроса. ENCTYPE задает тип кодирования содержимого заполненной формы. Этот атрибут действует только когда используется метод POST и даже в этом случае имеет только одно возможное значение (которое является значением по умолчанию)- application/x-www-form-urlencoded. Внутри FORM оператора может находиться все, что угодно, кроме другого оператора FORM. Согласно спецификации, для задания интерфейсных элементов внутри оператора FORM используются тэги INPUT,SELECT, и TEXTAREA. Функция открытия файла. Открытие файла: $fp=fopen(“имя_файла”, “режим_открытия”,”….какой путь ….//….//имя_файла”) 24. Перечислите режимы открытия файла. Что означает следующая запись fopen(“test.txt”, w+);
Режимы открытия файла: 1) r – режим только чтения; 2) r+ – для чтения и записи (в этом режиме файл уже должен существовать); 3) w – запись с начала файла, если нет то создается или переписывается по новой; 4) w+ – запись и чтение; 5) a – режим добавления в конец (т.е. дописывает), если нет то создается; 6) a+ – запись и чтение; 7) b – бинарный (режим записи). fopen(“test.txt”, w+); - эта запись означает, что открывающийся файл будет подвержен записи и чтению.
25. Перечислите режимы открытия файла. Что означает следующая запись fopen(“test.txt”, а+); Аналогично предыдущему начало, но fopen(“test.txt”, a+); - будет означать, что тоже будет произведена запись и чтение.
26. Перечислите режимы открытия файла. Что означает следующая запись fopen(“test.txt”, w); Аналогично предыдущему начало, но fopen(“test.txt”, w); - будет означать, что тоже будет произведена запись с начала файла, а если нет то создается новый или переписывается.
Напишите оператор, который проверяет, что файл с именем “test.txt” существует. Ф-ция которая проверяет, что файл “test.txt” существует выглядит таким образом: File_exists(“test.txt”) <?php Смотреть от 25.09.2013 года Функции закрытия и удаления файлов. Закрытие файла Закрытие файла происходить с помощью функции fclose(), которая принимает 1 обязательный параметр. <?php Для удаления файла в PHP можно использовать функцию unlink. На примере простого скрипта, разберем работу unlink: <?php
29. Функции для записи информации в файл. Написать оператор, который записывает в файл информацию из переменной $var длиной 250 байт. Fwrite (PHP 3, PHP 4, PHP 5) fwrite($fp,$var[,250]) fwrite -- Бинарно-безопасная запись в файл Описание int fwrite (resource handle, string string [, int length]) fwrite() записывает содержимое string в файловый поток handle. Если передан аргумент length, запись остановится после того, как length байтов будут записаны или будет достигнут конец строки string, смотря что произойдёт первым. fwrite() возвращает количество записанных байтов или FALSE в случае ошибки. Обратите внимание, что если аргумент length указан, то конфигурационная опция magic_quotes_runtime будет проигнорирована и строка string не будет очищена от слешей. Замечание: В системах, различающих двоичные и текстовые файлы (к примеру, Windows), файл должен быть открыт используя флаг 'b' в конце аргумента mode функции fopen().
Чтение и запись в текстовый файл казалось бы простейшая операция. Блокировал, открыл, записал, закрыл, снял блокировку с файла. Однако просто это только на первый взгляд….
Давайте подумаем, что произойдет, если к одному и тому же файлу одновременно обратятся несколько процессов, с целью записать туда какую-либо информацию? Могу сразу ответить: часть, либо вся информация, хранящаяся в файле будет безвозвратно потеряна. И просто блокировкой файла здесь не обойтись. Такая задача встала передо мной при написании скрипта каталога для обмена ссылками LinkExchanger. Информация там должна была храниться именно в файлах. В итоге получилась вот такая функция, код которой приведен ниже…
Давайте разберем очень подробно, как это работает. Первое, что мы делаем – открываем на запись блокирующий файл. Далее ставим на него блокировку, и если эта операция прошла успешно, открываем на запись временный файл, в который и пишем нашу информацию. File_put_contents(“имя_файла”, строка кот записывается) – запись в файл fwrite($fp, $var [,250]) Функции чтения из файла. File_get_contents (PHP 4 >= 4.3.0, PHP 5) file_get_contents — Читает все содержимое файла и выдает результат в виде строки Прим. переводчика. На базе этой функции часто строятся простейшие HTML-парсеры. Т.е. указывается URL нужной HTML страницы. Описание string file_get_contents (string $filename [, int $flags = 0 [, resource $context [, int $offset = -1 [, int $maxlen = -1 ]]]])
Эта функция аналогична функции file(). Отличие заключается в том, что функция file_get_contents() возвращает файл в виде строки, которая начинается с заданного смещения ( offset ) и ограничивается максимальной длиной maxlen , задаваемой в байтах. В случае ошибки функция file_get_contents() возвращает FALSE . file_get_contents() это лучший способ получать содержимое файла в виде строки. Для повышения быстродействия функция, если это позволяет делать операционная система, использует технологию memory mapping techniques. Примечание: Если Вы открываете URI, содержащий специальные символы (например пробелы), Вам надо кодировать URI с помощью функции urlencode(). Примечание: Значение по умолчанию параметра maxlen не равно -1. По умолчанию значение этого параметра равно внутренней константе PHP, которая означает копировать все содержимое файла пока не встретится символ "конец файла". Если Вы хотите получить все содержимое файла, просто не используйте этот параметр. Параметры filename Имя файла, который надо прочитать. flags Примечание: До версии PHP 6, этот параметр называется use_include_path , тип данных bool. Как и в PHP 5 параметр FILE_USE_INCLUDE_PATH может использоваться для указания, надо ли выполнять поиск в каталогах include path. Значение параметра flags может быть представлено как комбинация следующих флагов (с некоторыми ограничениями), объединенных бинарной операцией И (|)
context Ресурс контекста (context resource) создается при помощи функции stream_context_create(). Если Вам не нужен пользовательский контекст (custom context), просто пропустите этот параметр, установив NULL . offset Это смещение, с которого должно начаться чтение файла. maxlen Максимальная длина данных, которые надо прочитать. Если значение не задано, файл будет прочитан до конца. Возвращаемое значение Функция возвращает прочитанные данные или FALSE в случае ошибки.
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|