Уроки PHP – полезные сниппеты

При работе с PHP очень полезно иметь определенный набор готовых функций и фрагментов кода (сниппетов), которые могут сэкономить много времени. Сегодня мы рассмотрим интересные фрагменты кода, которые, вероятно, вам пригодятся.

 

 

1) Найти все ссылки на странице

Используя DOM, вы можете легко получить все ссылки с любой веб-страницы. Вот рабочий практический пример:

<?php
$html = file_get_contents('https://sebweo.com');
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom); // получение всех узлов DOM страницы
$hrefs = $xpath->evaluate("/html/body//a");
for ($i = 0; $i < $hrefs->length; $i++) {
 $href = $hrefs->item($i);
 $url = $href->getAttribute('href');
 echo $url.'<br>';
}
?>

 

Замените в первой строке домен на нужный вам.

 

 

2) Извлечь все ключевые слова с веб-страницы

С помощью этого PHP сниппета вы можете легко извлечь все ключевые слова (<meta name="keywords"/>) с любой веб-страницы.

<?php
$meta = get_meta_tags('https://sebweo.com');
$keywords = $meta['keywords'];
$keywords = explode(',', $keywords ); // разделение ключевых слов
$keywords = array_map( 'trim', $keywords ); // их обрезка
$keywords = array_filter( $keywords ); // удаление пустых значений
print_r( $keywords );
?>

 

Замените в первой строке домен на нужный вам.

 

 

3) Whois-запрос с использованием PHP

Если вам нужно получить информацию whois для определенного домена, вы можете использовать PHP для этого. Следующая функция принимает имя домена в качестве параметра, а затем отображает информацию whois, которая связана с этим доменом.

<?php
function domainWhoisInfo($domain) {
 // получение правильной записи доменного имени:
 $domain = strtolower(trim($domain));
 $domain = preg_replace('/^https?:\/\//i', '', $domain);
 $domain = preg_replace('/^www\./i', '', $domain);
 $domain = explode('/', $domain);
 $domain = trim($domain[0]);
 // разделение доменной зоны от доменного имени
 $_domain = explode('.', $domain);
 $lst = count($_domain)-1;
 $ext = $_domain[$lst];
 // серверы с информацией whois для некоторых доменных зон
 $servers = array(
  "biz" => "whois.neulevel.biz",
  "com" => "whois.internic.net",
  "edu" => "whois.internic.net",
  "gov" => "whois.nic.gov",
  "info" => "whois.nic.info",
  "name" => "whois.nic.name",
  "net" => "whois.internic.net",
  "org" => "whois.pir.org",
  "ru" => "whois.ripn.net",
  "tv" => "whois.tv",
  "ua" => "whois.ua"
  "us" => "whois.nic.us",
 );
 if (!isset($servers[$ext])){
  die('Ошибка: не найдено ни одного подходящего сервера!');
 }
 $nic_server = $servers[$ext];
 $output = '';
 // подключение к whois серверу:
 if ($conn = fsockopen ($nic_server, 43)) {
  fputs($conn, $domain."\r\n");
  while(!feof($conn)) {
  $output .= fgets($conn,128);
 }
 fclose($conn);
 }
 else { die('Ошибка: не удалось подключиться к ' . $nic_server . '!'); }
 return $output;
}
// вызов функции определения whois
print_r(domainWhoisInfo('sebweo.com'));
?>

 

Замените в последней строке домен на нужный вам.

 

This post was last modified on 27/05/2019 17:07

Последние посты

Джордж Оруэлл

Вся пропаганда войны, все крики, ложь и ненависть, исходят всегда от людей, которые на эту…

14/06/2024

Фитосвечи для поддержания здоровья женской флоры

    Фитосвечи: Поддержка Здоровья Женской Флоры Фитосвечи являются эффективным средством для улучшения функционального состояния…

11/06/2024

Тренировка груди с гантелями и скамейкой от Youtube канала

Приветствую вас, ребята! Вы когда-нибудь задумывались, как улучшить тренировку груди, используя гантели и лавку? Это…

05/06/2024

Что такое порт (компьютерный) и для чего он нужен?

Поскольку различные компьютерные приложения могут использовать различные процессы и/или службы, операционная система ПК на программном…

01/06/2024

Уроки PHP — Обработка ошибок (возможные типы ошибок)

В сегодняшнем теоретическом уроке мы рассмотрим сложный и важный вопрос в PHP — выявление и…

30/05/2024

Как создавать умные торговые кампании через Merchant Center?

Интеграция Merchant Center с Google Рекламой открывает доступ к такому эффективному типу кампаний, как Умные…

29/05/2024