Как переконвертировать на PHP время из BST в GMT?
Исходные данные: время текстовой строкой в формате 00:00 BST
Выходные данные: 00:00
К примеру, имеем данные 16:00 BST, надо получить 15:00.
Натравливаем вот такой кусочек кода:
|
date_default_timezone_set("GMT"); echo date("H:i","16:00 BST",time())); |
на выходе получаем 15:00, удобно и просто.
Обратите внимание, что если поставить 16:00 GMT то на выходе получим 16:00
Удачи.
Перекодировка cp1251 в UTF8 на PHP
Сегодня столкнулся с проблемой перекодировки русского текста из cp1251 (windows-1251) в UTF8. Решение нашел быстро. Как всегда нельзя переоценить роль Google;)
Ранее пользовался
iconv(“CP1251″, “UTF-8″, $text_for_convert), но, как известно
iconv даёт большую нагрузку на сервер и работает медленнее чем представленная ниже функция.
(далее…)
Как сформировать справочник сотрудников по дням рождений используя Active Directory?
Допустим у нас есть корпоративный портал и вы хотите на нем показывать у кого и когда дни рождения, руками это делать муторно и долго, если у вас 100+ сотрудников.
Предложу один из вариантов решения.
В AD, когда заводиться новый сотрудник (пользователь) в поле "Описание" я добавляю его дату рождения в формате дд-мм-гггг
После этого, состряпываем небольшой скриптик который цепляемся к AD через LDAP и формирует список дней рождений.
(далее…)
Выдача Last-Modified, а также работа с If-Modified-Since в PHP-скриптах
<?php
// Определяем дату модификации скрипта и выдаем Last-Modified
$last_modified = filemtime($SCRIPT_FILENAME);
header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $last_modified) . ' GMT');
// Пытаемся получить содержимое If-Modified-Since
foreach($_SERVER as $name => $value) {
if($name == 'HTTP_IF_MODIFIED_SINCE')
$modified_since = $value; }
// Пытаемся преобразовать значение в Unix time
if (isset($modified_since)) {
$modified_since = strtotime(preg_replace('/;.*$/', '', $modified_since));
} else {
$modified_since = 0; }
// Сравниваем даты и выдаем заголовок, если требуется
if ($last_modified <= $modified_since) {
header('HTTP/1.1 304 Not Modified');
exit(); }
?>
(далее…)
If-Modified-Since и If-None-Match, если PHP не установлен как модуль Apache
Многие разработчики (веб программисты), кто начинает "общаться" с кэшированием веб страниц на стороне клиента, знает о таких вещах (заголовках HTTP) как «If-Modified-Since» и «If-None-Match». Эти заголовки отдаются браузером при обращении к странице, которые лежат в его кэше. Для того, чтобы правильно сделал кеширование на стороне клиента, серверной части необходимо отправить заголовок "HTTP/1.0 304 Not Modified" и остановить передачу данных если содержимое запрошеной страницы не менялось с того времени, которое указано в присланном заголовке "If-Modified-Since".
(далее…)
PHP и ЧПУ, что это и как с ними работать?
На днях нужно было быстренько состряпать простое подобие ЧПУ, для 4-6 страниц. Смысл заключался в том, что есть header (картинка с меню) и футер (картинка), а в центре должен был меняться текст. Т.к. страниц было всего от 4 до 6 то речи о CMS в принципе быть и не могло (не тот масштаб).
Было решено сделать до боле глупое решение. (на нем хорошо просматривается принцип работы ЧПУ).
Есть файл .htaccess со следующим содержимым:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php?$1 [L] (далее…)
Усовершенствованный var_dump на php (dumphper)
На просторах интернета отыскал очень удобный дампер, лучше чем стандартный var_dump.
Собственно чем же он лучше, ну во-первых вся информация выводиться намного читабельнее, нет ограничения ко кол-ву символов, да и вообще все на много проще и удобнее.
|
class Dumphper { /** config **/ static $encoding = 'UTF-8'; /** Text encoding, needed to escape stings **/ static $escape_keys = false; /** Should array keys be escaped (slow) **/ static $max_showw_depth = 1; /** Defines how many nested levels will be expanded by default **/ /** don't touch **/ static $objects = array(); static $calls = 0; static $depth = 0; |
(далее…)
csv парсер на php, очень простой и в некоторых случаях очень нужный скрипт. Написан был не мной, автору респект, надеюсь не обидится т.к. не помню исходной ссылки на сайт. Пользуйтесь.
|
echo "<table>\n"; ini_set("display_errors","0"); $file = $_POST['file']; $csv_lines = file("xxx.csv"); if(is_array($csv_lines)) { |
(далее…)
Свежие комментарии