Все книги знаний
Книга знаний PHP
<a> Книга знаний Javascript и Jquery </a>
<a> Книга знаний CSS </a>
<a> Книга знаний MySQL </a>
Содержание:
1. Последний сгенерированный id
2. Call to undefined function imagecreatefromjpeg()
3. Провека на нулевой результат MySQL запроса
4. Заголовки
7. Отправка письма с помощью mail
8. Перевод IP в число и обратно
9. Управление настройками в php коде
Книга знаний PHP
Данны записи не претендуют быть учебным материалом.
Вывод ошибок
// Узнаем включен ли вывод ошибок сейчас
$diplayErr = ini_get('display_errors');
// укажем что нужно выводить все ошибки и нотисы в строком режиме
error_reporting(E_ALL | E_STRICT);
// включим сам вывод ошибок
ini_set('display_errors', 1);
// пишем проверяемый код
// включим режим который был по умолчанию
ini_set('display_errors', $diplayErr);увеличение времени выполнения скрипта
set_time_limit(60)
// или вот так
ini_set("max_execution_time", "60");
Используем следующие фукции:
ip2long();
long2ip();
/* укажем email на который будем отсылать письмо*/
$to= "33@mail.ru";
/* тема письма */
$subject = "Заявка на звонок - " . $phone . " - " . $name ."\r\n";
$subject = iconv('utf-8', 'cp1251', $subject );
/* сообщение для отправки в формате HTML */
$message = '<html><body>У Вас новая заявка на звонок!<br>' . $name .' просит Вас перезвонить ему на номер: ' . $phone . '</body></html>';
$message = iconv('utf-8', 'cp1251', $message );
/* Укажем необходимые заголовки */
$headers= "MIME-Version: 1.0\r\n";$headers .= "Content-type: text/html; charset=windows-1251\r\n";
$headers .= "From: POSTMAN m-alt.ru <robot@m-alt.ru>\r\n";
/* отправим письмо */
mail($to, $subject, $message, $headers);
Находим подстроки по шаблону |любой текст|
preg_match_all("#\|([^\|]+)\|#i",$str,$array_main);Находим подстроки по шаблону [любой текст]
preg_match_all("#\[([^\]]+)\]#i",$str,$array_main);Узнаем есть ли создержимое между тегами <table> ... </table>
preg_match_all("|]*>(.*)<\/table>|i",$good_char,$out);Регулярка для разбития даты ‘2010-08-16 02:30:58’
preg_match('#^(\d{4})-(\d{2})-(\d{2}) (\d{2}):(\d{2}):(\d{2})$#', $row['page_date_publish'], $date);Intval через регулярку
preg_replace('/[^0-9]/', '', 'Привет123!');
// выведет 123Выдернуть все символы кроме латинских, цифр и нижнего подчеркивания
preg_match_all("/[^A-Za-z0-9_]/", $input, $out);
Дата сегодня
date('Y.m.d');Дата сегодня минус 1 месяц
date('y.m.d',mktime(0, 0, 0, date('m') - 1, date('d'), date('y')));Pазница между двумя датами (Библиотека программиста)
$current_date = mktime (0,0,0,date("m"), date("d"), date("Y")); //дата сегодня
$old_date = mktime (0,0,0,11,25,2004); //2004.11.25
$difference = ($current_date - $old_date); //разница в секундах
$difference_in_days = ($difference / 86400); //разница в днях
для 404 ошибки
header($_SERVER['SERVER_PROTOCOL'] . ' 404 Not Found'); // отправим заголовки для 404 страницы
переадресация
header("location: /404.html"); // переадресовываем на страницу с 404 ошибкойкодировка страницы
header("Content-type: text/html; charset=windows-1251"); // установим кодировкузаголовок для xml
header("Content-type: text/xml");
$sql = "SELECT email FROM base_emails WHERE email = 'mail@yandex.ru'";
$result = mysql_query($sql);
if ($array = mysql_fetch_assoc($result)) {
// код если есть хоть одна запись
} else {
// код когда результат нулевой
}
Необходимо проверить наличие вот такой записи в php.ini:
[PHP_GD2]extension=php_gd2.dll
а также наличие самого файла c:\Program Files\PHP\ext\php_gd2.dll
$id = mysql_insert_id(); // возвращает ID, сгенерированный для столбца AUTO_INCREMENT предыдущим запросом INSERT