При установке своего модуля, плагина или чего-либо еще на другие сайты, можно собирать определенную статистику о модуле (например о его версии), хосте на котором он запускается и тд.

Пример скрипта, который должен выполниться при запуске/выполнении (желательно однократно) своего модуля:
$url = 'http://stat.klisl.com/';
$params = array(
    'module'  => 'KSL',
    'ver'     => '1.3',
    'host'    => $_SERVER['SERVER_NAME'],
);

@$result = file_get_contents($url, false, stream_context_create( array(
    'http' => array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => http_build_query($params)
    )
)));

Функция http_build_query() возвращает URL-кодированную строку такого формата:
module=KSL&ver=1.3&host=test.loc



В данном случае, с помощью функции file_get_contents(), POST-запросом, на указанный в $url адрес, отправится массив $params, который можно получить на 'http://stat.klisl.com/' и разложить на части:
$module = $_POST['module'];
$version = $_POST['ver'];
$host = $_POST['host'];
$dateStart = time();

//далее сохранение в БД. Для примера просто выведем на экран
echo 'Запуск модуля '.
    $module.
    $version.'<br>'.
    'хост: '.$host.'<br>'.
    'в '.date("d.m.Y", $dateStart);

Функция file_get_contents() читает содержимое файла который обрабатывает запрос и, если та страница что-то выводит, можно сохранить это в переменную (тут $result).
Таким образом, при тестировании данного примера можно вывести переданные значения. Для этого добавить в первый скрипт:
echo $result;
Результат:
Запуск модуля KSL1.3
хост: test.loc
в 03.04.2017

Так же можно, передавая назад определенные данные, обрабатывать их. Например может быть несколько версий модулей в т.ч. платный. Тогда для платного сделать идентификацию.