Малоизвестные функции на PHP

// Текущее время
echo date(‘h:i:s’) . «\n»;

// ждать 2 секунды
usleep(2000000);

// вернуться к исполнению
echo date(‘h:i:s’) . «\n»;

?>
Документация по usleep.

chunk_split()

Функция разбивает строку на фрагменты. Документация.

<?php
// форматирование данных в соответствии с RFC 2045
$new_string = chunk_split(base64_encode($data));
?>

count_chars()

Возвращает информацию о символах, входящих в строку.

<?php
$data = "Two Ts and one F.";

foreach (count_chars($data, 1) as $i => $val) {
   echo "\"" , chr($i) , "\" встречается в строке $val раз(а).\n";
}
?>

Документация по count_chars.

md5_file()

Функция возвращает MD5-хэш файла.

<?php
$file = 'php-5.3.0alpha2-Win32-VC9-x64.zip';

echo 'MD5-хэш файла ' . $file . ': ' . md5_file($file);
?>

Документация по md5_file. Кстати, есть похожая функция sha1_file(), но с другим алгоритмом шифрования.

money_format()

Функция форматирует число как денежную величину.

<?php

$number = 1234.56;

// международный формат в локали en_US
setlocale(LC_MONETARY, 'en_US');
echo money_format('%i', $number) . "\n";
// USD 1,234.56

// Итальянский национальный формат с 2 знаками после запятой
setlocale(LC_MONETARY, 'it_IT');
echo money_format('%.2n', $number) . "\n";
// Eu 1.234,56

// Использование отрицательных чисел
$number = -1234.5672;

// национальный формат США, с использованием скобок для
// отрицательных чисел и 10 знаков до запятой
setlocale(LC_MONETARY, 'en_US');
echo money_format('%(#10n', $number) . "\n";
// ($        1,234.57)

// подобно предыдущему, но с добавлением 2 знаков после запятой
// и '*' в качестве символа заполнения
echo money_format('%=*(#10.2n', $number) . "\n";
// ($********1,234.57)
    
// Выравнивание влево, ширина 14 знаков, 8 знаков до запятой,
// 2 знака после запятой, без разбиения на группы
// с использованием  международного формата в локали de_DE.
setlocale(LC_MONETARY, 'de_DE');
echo money_format('%=*^-14#8.2i', 1234.56) . "\n";
// Eu 1234,56****

// А теперь добавим текст перед и после описанием формата
setlocale(LC_MONETARY, 'en_GB');
$fmt = 'Итоговая сумма: %i (после 10%% скидки)';
echo money_format($fmt, 1234.56) . "\n";
// Итоговая сумма:  GBP 1,234.56 (после 10% скидки)

?>

А вот и документация по money_format.

parse_str()

Как вы могли сами догадаться, функция разбирает строку в переменные.

<?php
$str = "first=value&arr[]=foo+bar&arr[]=baz";

// Рекомендуемый подход
parse_str($str, $output);
echo $output['first'];  // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz

// НЕ РЕКОМЕНДУЕТСЯ
parse_str($str);
echo $first;  // value
echo $arr[0]; // foo bar
echo $arr[1]; // baz
?>

Документация по parse_str.

quotemeta()

Экранирует специальные символы.

<?php
$str = "Hello world. (can you hear me?)";
echo quotemeta($str);
?>

Документация по quotemeta.

str_pad()

Функция дополняет строку другой строкой до заданной длины.

<?php
$input = "Alien";
echo str_pad($input, 10);                      // выводит "Alien     "
echo str_pad($input, 10, "-=", STR_PAD_LEFT);  // выводит "-=-=-Alien"
echo str_pad($input, 10, "_", STR_PAD_BOTH);   // выводит "__Alien___"
echo str_pad($input,  6, "___");               // выводит "Alien_"
echo str_pad($input,  3, "*");                 // выводит "Alien"
?>

Документация по str_pad. Обратите еще внимание на функцию str_repeat().

Мы рассмотрели наиболее интересные и малоиспользуемые функции в PHP. У вас появились вопросы? Пишите свои комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Добавить комментарий

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: