04.01.10

Monday, January 4th, 2010



Тема в правильной кодировки для функции mail

Monday, November 9th, 2009
 
$subject = 'Тема';
$subject = '=?WINDOWS-1251?B?' . base64_encode($subject) . '?=';
 

Вместо WINDOWS-1251 можно указать другую кодировку.

php: склонение числительных

Wednesday, September 23rd, 2009

Функция для склонения числительных:

 
function declOfNum($number, $titles) {
    $cases = array (2, 0, 1, 1, 1, 2);
    return $titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ];
}
 

Пример использования:

 
$titles = array( 'вопрос', 'вопроса', 'вопросов' ); 
 
for ( $i = 0; $i < 10000; $i++ ) {
	echo 'ответили на ' . $i . ' ' . declOfNum($i, $titles);
}
 

Результат под катом
(more...)

php: strtolower, strtoupper не работают с кириллицей

Wednesday, September 23rd, 2009

Начинают работать после:

 
	define('C_LANG','ru');
	setlocale(LC_CTYPE , 'ru_RU.CP1251');
 

php: альтернативный синтаксис для конструкции switch

Sunday, September 14th, 2008

Альтернативный синтаксис это если вместо

<?if ( 1 ) {
echo 'test';
}?>

Писать

<? if ( 1 ) : ?>
test
<? endif; ?>

Подробнее тут:

http://ru.php.net/control-structures.alternative-syntax

Для конструкции switch альтернативный синтаксис имеет особенность, а именно правильно писать так:

<? switch ( $var ) : // если здесь поставить "?>" то php выдаст ошибку
case '1': ?>

test

<? break; ?>

<? default: ?>

<? endswitch; ?>

Полезные шпаргалки

Friday, July 4th, 2008

Полезные шпаргалки по регулярным выражениям, css, php, html и много еще чему: http://www.addedbytes.com/cheat-sheets/.

Документация по программированию (php, html, css, javascript, xml)

Sunday, June 15th, 2008

Ссылки на онлайн документацию по языкам программирования:

PHP - http://www.php.net/manual/ru/
JavaScript - http://developer.mozilla.org/ru/docs/JavaScript
HTML,CSS,JS,XML - http://www.w3schools.com/
HTML,CSS - http://htmlbook.ru

Добавление заголовка Last-modified в динамически создаваемые старницы

Saturday, April 19th, 2008

Last-modified это метка высылаемая веб-сервером клиенту, показывающая дату последнего изменения запрашиваемого документа.

200 OK
Connection: close
Date: Thu, 17 Apr 2008 23:37:09 GMT
Server: Apache
Content-Type: text/html
Last-Modified: Wed, 12 Mar 2008 07:43:40 GMT

Как просматривать заголовки можно читаем тут.
Для статических документов таких как например .html .txt апач выдает этот заголовок автоматически. Чтобы этот заголовок выдавался и для .php файлов нужно включить следущий код в php скрипт. Три варианта:
Вариант 1

<?php
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
?>

Выдает текущую дату. Таким образом для документа будет выдаваться всегда новая дата.

Вариант 2

<?php
header('Last-Modified: Wed, 24 Oct 2007 14:14:38 GMT');
?>

Выдает одну и туже указанную дату.

Вариант 3

<?php
header('Last-Modified: '.date("D, d M Y H:i:s",filemtime(__FILE__)).' GMT');
?>

Выдает дату последнего изменения документа.

Этот код нужно помещать в самое начало скрипта, до вывода чего-либо.

Дата должна быть указана в формате ISO-<что-то там>.

Инициализация GET и POST переменных в PHP

Wednesday, April 9th, 2008

Для переменных переданных методом GET:

$var = !empty($_GET['var']) ? $_GET['var'] : '';

Для переменных переданных методом POST:

$var = !empty($_POST['var']) ? $_POST['var'] : '';