Офис НП AMWAY в Ярославле
Офис Амвей в Ярославле
На карте Офис AMWAY в ЯрославлеПрием и выдача заказов, презентация продукции Амвей, мастер–классы, вопросы по бизнесу Amway:
Адрес: улица Валентины Терешковой, дом 1 (Вход со двора)
Телефон: +7 (920) 112-00-91
Email: matyxho@mail.ru
Сайт: https://www.amway.ru/user/lebedem
Визитка: http://yar.meweb.ru
Иерархия статей
Статьи » Программирование » Полезные PHP функции. Подборка номер 3
Сниппет
Ну и в продолжении темы- еще несколько интересных и полезных функций PHP
Полезные PHP функции. Подборка номер 3
Опубликовал  Pisatel Pisatel Добавлено  19-02-2013 18:58 19 Февраль 2013 18:58:48 3788  Прочтений 3788 Прочтений
 printer
Вот тебе на закуску еще несколько интересных и полезных php- функций и кодов.

Время генерации страницы


Возможно, пригодится кому. Удобно отслеживать время генерации страницы сервером. Для чего нужно? Ну уж это кто что придумает. Например, если у меня эта цифра превышает 0,5 секунд, то я начинаю отключать баннеры и панели одну за другой, чтобы выяснить, что именно тормозит генерацию, и, соответственно, произвести ремонт. Можно установить данный код на каждую панель, и будем видеть и контролировать всё. На этом сайте тоже стоит, только пользователи этого не видят, ведь им это, собственно, ни к чему.
Код: PHP
//прописываем в начало страницы, задаем константу START_TIME- это будет "точкой" начала отсчета времени
define('START_TIME',microtime(true));
//здесь идет твое содержание страницы
//ну и далее внизу- сам вывод:
printf('Генерация страницы: %.4f сек.',microtime(true)-START_TIME);
//выведет 4 знака после запятой, думаю, этого достаточно.
//мы увидим: Генерация страницы: 0,0035 сек.



Функция подсчета веса всех файлов в каталоге


Рекурсивная функция подсчета общего веса всех файлов в каталоге. Я за пример взял папку images у себя.
Код: PHP
    $path = '/images';
//задали путь папки
function getSizeRecursiveDir($path) {
$size = 0;
$ite = new RecursiveDirectoryIterator($path);
foreach(new RecursiveIteratorIterator($ite) as $cur) {
$size += $cur->getSize();
}
return $size;
}

//применение функции и перевод в килобайты
$s = getSizeRecursiveDir(dirname(__FILE__).'/images');
$kb = round($s/1024, 2).' kb';
var_dump($kb);
//на выводе получим string(9) "864.45 kb"



Функция получения абсолютных путей до всех файлов в указанной дирректории


Данная функция написана пользователем Okula, она весьма быстродейственна и, в то же время, проста. Итак, вот она:
Код: PHP
    $path_dir = '/var/www/блабла/data/www/meweb.ru/images';
//указываем полный путь до сканируемой папки
//далее пошла сама функция
function getArrayFiles($path_dir) {
$array_path = array();
$dir = new RecursiveDirectoryIterator($path_dir);
foreach(new RecursiveIteratorIterator($dir) as $val) {
if($val->isFile()) {
$array_path[] = $val->getPathname();
}
}
return $array_path;
}
//ну и, собственно, вывод
echo var_dump(getArrayFiles($path_dir));
//на выводе получаем:
// array(101) { [0]=> string (59) "/var/www/блабла/data/www/meweb.ru/images/imagenotfound.jpg" [1]=>string(51) "/var/www/блабла/data/www/meweb.ru/images/minus.gif" [2]=> string(61) "/var/www/блабла/data/www/meweb.ru/images/logo1.png" ... и так далее, все файлы )



З.Ы. Все функции опробованы и будут работать на PHP 5.2 и выше, за более ранние версии ничего сказать не могу, тестируй, пиши в комментариях. Аривидерчи!
Понравилась статья?
Метки для данной статьи
Похожие статьи
Поделиться:   
Последние активные темы форума
  Темы Просмотров Ответов Последние сообщения
folder Вопрос по переделке bb-кода
PHP, MySQL
22330 5 Pisatel
26. мая 2017
folder Вопросы по Ajax форме обратной связи
CMS PHP Fusion
68545 48 Ditrin
19. февраля 2017
folder BBCode YouTube Video Colorbox mod
CMS PHP Fusion
15357 2 Pisatel
10. декабря 2016
folder Как лучше создать собственную страницу?
CMS PHP Fusion
17888 17 Pisatel
11. мая 2016
folder Небольшие вопросы по скриптам магазина и катало...
PHP, MySQL
144805 80 Pisatel
11. января 2016
folder BBCode Code mod
CMS PHP Fusion
14416 0 Pisatel
31. августа 2015
folder Ajax Like Dislike Article Panel
CMS PHP Fusion
22550 16 Pisatel
07. июля 2015
folder Хлебные крошки / BreadCrumbs SEO Panel
CMS PHP Fusion
26238 17 Pisatel
04. июля 2015
folder Abbr Description BBCode
CMS PHP Fusion
7665 0 Pisatel
15. июня 2015
folder Плагин Email рассылки Mail To All by Pisatel
CMS PHP Fusion
36989 32 Pisatel
26. апреля 2015
folder Подозрительный трафик и прочие страшилки
Всякая хрень
11793 2 Ditrin
23. апреля 2015
folder Мод Newsletter - рассылка писем пользователям с...
CMS PHP Fusion
31034 13 Pisatel
10. апреля 2015
folder Мод отправки писем PHPMailer для PHP-Fusion
CMS PHP Fusion
128303 113 Ditrin
06. апреля 2015
folder Появление неизвестного файла subscriptions.php
CMS PHP Fusion
8842 2 Pisatel
06. апреля 2015
folder Autoban on IP
CMS PHP Fusion
23180 13 Pisatel
03. апреля 2015