Установка APC Opcode Cache

Примечание: если вы используете PHP версии 5.3 и выше, рекомендуется устанавливать Zend OPcache так как он более эффективен.

Установка

Переходим на сайт и скачиваем последнюю версию APC //pecl.php.net/get/APC либо воспользуемся wget-ом, как показано ниже.

    $ wget //pecl.php.net/get/APC
    $ apt-get install build-essential libpcre3-dev
    $ tar -xvzf APC-3.1.13.tgz
    $ cd APC-3.1.13
    $ ./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/bin/php-config
    $ make
    $ make test
    $ make install

Узнать больше


Установка PHP Zend OPcache

Если вы используете PHP 5.5 и выше то, возможно, Zend OPcache уже установлен. Для проверки запустим командочку php -v:

$ php -v
PHP 5.5.9-1ubuntu4.14 (cli) (built: Oct 28 2015 01:34:46)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies

Допустим, мы используем версию PHP 5.3.10, естественно у нас нет OPcache и нам нужно его установить. Делаем как указано ниже (естественно все из под root или через sudo):

Узнать больше


Увеличить время выполнения скрипта (PHP)

Увеличить время выполнения скрипта можно четырьмя способами. Два способа при помощи PHP функций (set_time_limit(int seconds) и ini_set(string varname, string newvalue)), при помощи настроек файла php.ini или использования файла .htaccess.

set_time_limit()

Самый простой и быстрый способ использовать вначале выполнения скрипта функции void set_time_limit( int seconds ), которая меняет значение параметра max_execution_time, установленное в файле php.ini (Значение устанавливается в секундах, по умолчанию 30 секунд).
Узнать больше


Несколько ошибок с PHP версии 5.3 и выше

Замечено было 2 ошибки в плагине Ajaxfilemanager для TinyMCE при работе на хосте с PHP версии 5.3 и выше.

Первая

перестали отображаться превью залитых картинок с расширением JPG

Исправление

В файле /admin/ajaxfilemanager/inc/class.image.php

в функцию

function _isSupported($filename, $extension, $function, $write = false)

добавить код

if (PHP_VERSION_ID >= 50300 && strtolower($extension) == "jpg") $extension = "JPEG";

Получится вот так:

Узнать больше


Дамп базы MySQL

Такс, бывают моменты, когда…

Нужно, к примеру, перенести базу с тестового сервера на рабочий, но вот незадача, объем файла превышает дозволенный лимит загружаемого в phpMyadmin. Но чудо! У нас есть доступ к консоли (SSH) и к нам на выручку спешит утилита mysqldump. Итак начнем.

Создание дампа

Дамп нужной базы

mysqldump -uroot -h192.168.1.1 -p database > database.sql

Дамп нескольких баз

mysqldump -uroot -h192.168.1.1 -p -B database1 database2 database3 > databases.sql

Дамп всех баз

Узнать больше


Прилепить footer к низу страницы

Заметочка о том как прилепить футер к низу страницы, а то всякое бывает, могу и забыть 🙂
Работает в: Internet Explorer 5 и выше, Firefox, Safari, Opera и так далее.

CSS

* {
	margin: 0;
}
html, body {
	height: 100%;
}
.wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -142px; /* the bottom margin is the negative value of the footer's height */
}
.footer, .push {
	height: 142px; /* .push must be the same height as .footer */
}

Ну и сам html

<html>
    <head>
        <link rel="stylesheet" href="layout.css" ... />
    </head>
    <body>
        <div class="wrapper">
            <p>Супер-мего контент.</p>
            <div class="push"></div>
        </div>
        <div class="footer">
            <p>Копирайт (c)</p>
        </div>
    </body>
</html>

Галерея PikaChoose и навигация интегрированного Fancybox

Ну что, начнемс. По запросу PikaChoose (не путать с Pok?mon-ом) в google.com или yandex.ru, вы, мои дорогие (я меня паранойя, что блог читают еще люди окромя меня), так вот, по этому запросу вы найдете много всякого полезного. И то, что это плагин для слайд-шоу с массой возможностей, и то что он интегрируется с Fancybox, и то что можно прикрутить jCarousel и ваще — сказка, а не плагин для обыкновенных задач.

Все это хорошо, но вот я добавлю все таки отсебятины, ну не совсем отсебятины, но все же.

Узнать больше


Рейтинг (звезды) в выдаче Google.

Раз пошла такая лабуда, выложу схему для красивого показа рейтинга в выдаче Google. Ну это такие звездочки с указанием количества оценок проголосовавших за вашу страницу (естественно, если он присутствует у вас на сайте).

Суть да дело, ближе к телу:

<div itemscope itemtype="http://schema.org/Product" >
	<meta itemprop="name" content="название страницы" >
	<meta itemprop="description" content="описание страницы" >
	<meta itemprop="url" content="http://url.com/url/" >
	<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating" >
	<meta itemprop="bestRating" content="5" >	<!-- максимально возможная оценка -->
	<meta itemprop="ratingValue" content="2,45" >	<!-- текущий/средний рейтинг -->
	<meta itemprop="ratingCount" content="85" >	<!-- количество проголосовавших -->
	</div>
</div>

Ну где-то так.


Красивые URL в выдаче Google. WordPress, Breadcrumb NavXT.

Такс, берем плагин для хлебных крошек «Breadcrumb NavXT», ставим и лезем в настройки.

Установка

  • Либо качаем плагин с офф.сайта, распаковываем в папку с плагинами (wp-content/plugins) и активируем в WordPress.
  • Либо в WordPress-е находим плагин «Breadcrumb NavXT» и ставим.

Тут все пучком.

Далее нам нужно что-бы эти самые крошки выводились на сайте в нужном нам месте, для этого мы подредактируем соответствующий файл нашей замечательнейшей темы (как правило, header.php).
Узнать больше


Пару полезных вещей на PHP

Что бы не забыть, пару функций

Удалить из массива элементы с определенным значением

$arr = array(2, 3, 4, 2, 5, 2);
function delEl($arr, $del) {
   foreach($arr as $val)  { if($val !== $del) $newArr[] = $val; }
   return $newArr;
}
// Пример
$checkDelEl = delEl($arr, 2);  // Удалим все "2" из массива $arr
print_r($checkDelEl);  // Array ( [0] => 3 [1] => 4 [2] => 5 )

Выковырять ссылки изображений

preg_match_all('/<img[^>]+src=([\'"])?((?(1).+?|[^\s>]+))(?(1)\1)/',$content,$matches);
print_r($matches[2]);

Выводим результат из массива:

if ($matches[2][0]!='') {
   echo "<img src='".$matches[2][0]."' alt=''/>";
}

где:
$content — может быть спарсеный код который содержит изображения.

Узнать больше