Здравствуйте уважаемые программисты !
В сети не нашел решения проблемы ..
на сайте есть большое количество ссылок с длинными адресами (анкорами), как собственно сократить текст ссылок без онлайн сервисов ...
Есть ли функции (движок вп)
function shortLink($url){
$chars = preg_split('#\s#', 'a b c d i f g j k l m n o p r s t q v x y z');
$res = null;
$rand_keys = array_rand($chars, 4);
foreach($rand_keys as $key)
$res .= $chars[$key];
$rand_dig = rand(100,1000);
//Склеили буквы и цифры
$res = $res.$rand_dig;
$res = str_shuffle($res);
//В файле храняться данные построчно в виде real_link||short_link
$dataLinks = file('links.txt');
//Получаю все короткие ссылки - чтобы не продублировать
if($dataLinks){
foreach($dataLinks as $k=>$v){
$links[] = $k;
$all_short_links[] = $v;
}
//Если $url уже назначен короткий урл - выходим
if(in_array($url, $links))
return false;
if(!in_array($res, $all_short_links))
file_put_contents('links.txt', $url.'||'.$res.PHP_EOL, FILE_APPEND);
else
shortLink($url);
}
else
file_put_contents('links.txt', $url.'||'.$res.PHP_EOL, FILE_APPEND);
return true;
}