xandeadx.ru Блог музицирующего веб-девелопера

PHPПолучаем город по IP адресу с помощью сервиса IpGeobase

Опубликовано в
<?php
 
/**
 * Возвращает информация об IP адресе
 */
function get_ip_info($ip)
{
    $postData = "
        <ipquery>
            <fields>
                <all/>
            </fields>
            <ip-list>
                <ip>$ip</ip>
            </ip-list>
        </ipquery>
    "; 
 
    $curl = curl_init(); 
 
    curl_setopt($curl, CURLOPT_URL, 'http://194.85.91.253:8090/geo/geo.html'); 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $postData); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); 
 
    $responseXml = curl_exec($curl);
    curl_close($curl);
 
    if (substr($responseXml, 0, 5) == '<?xml')
    {
        $ipinfo = new SimpleXMLElement($responseXml);
        return $ipinfo->ip;
    }
 
    return false;
}
 
// пример использования
$ipinfo = get_ip_info($_SERVER['REMOTE_ADDR']);
echo $ipinfo->city; // город
echo $ipinfo->region; // регион
echo $ipinfo->district; // федеральный округ РФ
 
?>

PHPУстановка xCache на Windows

Опубликовано в

1. Скачиваем бинарники последней стабильной версии под Windows и вашу версию PHP.

2. Копируем файл php_xcache.dll в вашу php extensions директорию.

3. Копируем содержимое xcache.ini в ваш php.ini.

4. Настраиваем xCache:

В php.ini комментируем либо удаляем две строчки из секции [xcache-common]:

zend_extension = /usr/local/lib/php/extensions/non-debug-non-zts-xxx/xcache.so
zend_extension_ts = c:/php/extensions/php_xcache.dll

Там же раскомментирываем строчку:

extension = php_xcache.dll

PHPИтоги двух дней жизни с xCache

Опубликовано в

Делюсь статистикой двух дней жизни с xCache, установку которого я описывал в прошлой записи.

График использования CPU:

Видно что нагрузка на процессор снизилась почти в два раза. А нагрузка это 1200 хостов и 10 000 хитов в день на форуме vBulletin, который живёт по соседству.

PHPУстановка xCache на FreeBSD

Опубликовано в

xCache это PHP акселератор, ускоряющая исполнение скриптов путём кэширования их байткода.

xCache это альтернатива таким популярным акселераторам как APC и eAccelerator.

Забегая вперёд скажу, что после установки xCache, мой drupal блог стал работать ровно в два раза быстрее, по данным утилиты ab.

PHPРаботаем с API LastFM

Опубликовано в

API у LastFM очень простой и понятный.

Перед началом использования, следует получить API key. Для чего нужно сходить на соответствующую страницу и заполнить форму:

  • Application/Device Name — название приложения которое будет работать с LastFM API, например LastFM Charts Drupal module

  • Application/Device Description — описание приложения, например Display user charts