Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
- Учебник по PHP (2004).pdf
Скачиваний:
132
Добавлен:
12.04.2015
Размер:
2 Мб
Скачать
☆

Возвращает строку, у которой первый символ заглавный. Символы кириллицы могут быть неправильно конвертированы.

$str = "hello world"; $str = ucfirst($str); echo $str;

// выведет Hello world

ucwords

Производит преобразование первого символа каждого слова строки в верхний регистр.

Синтаксис :

string ucwords(string str);

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

Символы кириллицы могут быть неправильно конвертированы.

$str = "hello world"; $str = ucfirst($str); echo $str;

// выведет Hello World

Строковые функции : Установка локали (локальных настроек)

setlocale

Установка региональных настроек.

Синтаксис :

string SetLocale(string category, string locale);

Функция setlocale устанавливает текущую локаль, с которой будут работать функции преобразования регистра символов, вывода даты-времени и т.д. Вообще говоря, для каждой категории функций локаль определяется отдельно и выглядит по-разному. То, какую именно категорию функций затронет вызов setlocale(), задается в параметре category. Он может принимать следующие строкрвые значения:

•LC_CTYPE - активизирует указанную локаль для функций перевода в верхний/нижний регистры;

•LC_NUMERIC - активизирует локаль для функций форматирования дробных чисел - а именно, задает разделитель целой и дробной части в числах;

•LC_TIME - задает формат вывода даты и времени по умолчанию;

•LC_ALL - устанавливает все вышеперечисленные режимы.

Теперь поговорим о параметре locale. Как известно, каждая локаль, установленная в системе, имеет свое уникальное имя, по которому к ней можно обратиться. Именно оно и фиксируется в этом параметре. Однако, есть два важных исключения из этого правила. Во-первых, если величина locale равна пустой строке "", то устанавливается та локаль, которая указана в глобальной переменной окружения с именем, совпадающем с именем категории category (или LANG - она практически всегда присутствует в Unix). Во-вторых, если в этом параметре передается 0, то новая локаль не устанавливается, а просто возвращается имя текущей локали для указанного режима.

setlocale("LC_CTYPE","ru_SU.KOI*-R");

//Здесь вызов устанавливает таблицу замены

//регистра букв в соответствии с кодировкой KOI8-R.

Строковые функции : Преобразование кодировок

convert_cyr_string

Преобразует строку из одной кодировки кириллицы в другую.

Синтаксис :

string convert_cyr_string(string str, string from, string to);

Функция переводит строку str из кодировки from в кодировку to. Конечно, это имеет смысл только для строк, содержащих "русские" буквы, т.к. латиница во всех кодировках выглядит одинаково. Разумеется, кодировка from должна совпадать с истинной кодировкой строки, иначе результат получится неверным. Значения from и to - одиночный символ, определяющий кодировку:

•k - koi8-r

•w - windows-1251

•i - iso8859-5

•a - x-cp866

•d - x-cp866

•m - x-mac-cyrillic

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

bin2hex

Производит преобразование символьных данных в шестнадцатеричный вид.

Синтаксис :

string bin2hex(string str)

Функция bin2hex() возвращает стороковое шестнадцатеричное представление символьно-байтовых данных, содержащихся в строке str. Конвертация производиться побайтово, старший полубайт указывается первым.

Строковые функции : Функции форматных преобразований

parse_url

Обрабатывает URL и возвращает его компоненты.

Синтаксис :

array parse_url(string url);

Эта функция возвращает ассоциативный массив, включающий множество различных существующих компонентов URL. Они включают "scheme", "host", "port", "user", "pass", "path", "query" и "fragment".

parse_str

Заносит строки URL в переменные.

Синтаксис :

void parse_str(string str [, array arr]);

Функция parse_str() интерпретирует строку str, как если бы эта строка содержала в себе переменные и их значения и передавалась бы в URL. Наша функция устанавливает для этих переменных значения.

Если задан второй необязательный параметр, то значения, найденные при помощи функции parse_str(), сохраняться не в глобальных переменных, а в элементах указанного массива.

$str = "name[]=Vasia&name[]=Pupkin&id=12645&mail=vasia@mail.ru&url=www.vasia.ru"; parse_str($str);

parse_str($str, $arr);

echo $id;

// выведет 1264

echo $name[0];

// выведет Vasia

echo $name[1];

// выведет Pupkin

print_r($arr);

 

// выведет

 

Array

 

(

 

[name] => Array

(

[0]=> Vasia

[1]=> Pupkin

)

[id] => 12645

[mail] => vasia@mail.ru [url] => www.vasia.ru

)

rawurlencode

Кодирование URL.

Синтаксис :

string RawUrlEncode(string str);

Функция RawUrlEncode() возвращает строку, в которой все не алфавитноцифровые символы (за исключением дефиса "-", знака подчеркивания "_" и точки ".") заменены последовательностями: знак процента (%), за которым следуют две шестнадцатеричные цифры, которые обозначают код символа. Это кодирование нужно для того, чтобы буквенные символы не обрабатывались в качестве разделителей строки URL и не искажались при передаче в сетях.

echo "<A href=ftp://user:".rawurlencode($mypasswd). "@ftp.my.com/x.txt>"; // передача пароля в гиперссылке

rawurldecode

Производит декодирование URL.

Синтаксис :

string rawurldecode(string str);

Эта функция возвращает строку, в которой последовательности с знаком процента (%) и следующими за ним двумя шестнадцатеричных цисла преобразует в симолы, соответствующими этому коду. Аналогична urldecode(), но не воспринимает + как пробел.

$str="foo%20bar%40baz"; echo rawurldecode($str); // выведет foo bar@baz

base64_encode

Кодирует данные в кодировке MIME base64.

Синтаксис :

string base64_encode(string data);

base64_encode() возвращает data закодированные в кодировке base64. Эта кодировка разработана для того, чтобы передовать двоичные данные через транспортные слои, которые не содержат восьмой бит, такие как почтовые тела. Данные в кодировке Base64 занимают примерно на 33% больше места, чем оригинал.

base64_decode

Декодирует данные, закодированные в кодировке MIME base64.

Синтаксис :

string base64_decode(string encoded_data);

base64_decode() декодирует encoded_data и возвращает оригинал данных. Возвращаемые данные могут быть двоичными.

Строковые функции : Функции URL

number_format

Форматирование числа.

Синтаксис :

number_format($number, $decimals, $dec_point=".", $thousands_sep=",");

Эта функция форматирует число с плавающей точкой с разделением его на триады с указанной точностью. Она может быть вызвана с двумя или четырьмя аргументами, но не с тремя! Параметр $decimals задает, сколько цифр после запятой должно быть у числа в выходной строке. Параметр $dec_point представляет собой разделитель целой и дробной частей, а параметр $thousands_sep - разделитель триад в числе (если указать на его месте пустую строку, то триады не отделяются друг от друга).

Строковые функции : Работа с бинарными данными

pack

Пакетирование данных в двоичную строку.

Синтаксис :

string pack(string format [,mixed $args, ...]);

Функция pack() упаковывает заданные аргументы в бинарную строку, которая затем и возвращается. Формат параметров, а также их количество, задается при помощи строки $format, которая представляет собой набор однобуквенных спецификаторов форматирования - наподобие тех, которые указываются в sprintf(), но только без знака %. После каждого спецификатора может стоять число, которое отмечает, сколько информации будет обработано данным спецификатором. А именно, для форматов a,A,h и H число задает, какое количество символов будет помещено в бинарную строку из тех, что находится в очередном параметре-строке при вызове функции (то есть, определяет размер