Как бы вы выполнили это задание из учебника?

Здраствуйте! Учу php по учебнику, после каждой главы задание, и вот задание, в котором я очень не уверен:

Создайте класс с методом find (), принимающий единственный аргумент - ­строку с названием функции РНР. В качестве результата метод должен возвра­щать текст с сайта php.net с описанием функции.

Как я понял, если я ищу какую-то функцию, то там один и тот же адрес с названием искомой функции посередине, и должно быть всё легко. То есть есть такая ссылка https://www.php.net/manual/ru/function.(unlink).php, и есть такая https://www.php.net/manual/ru/function.(delete).php, меняется одно слово. Но есть ли более универсальное решение, или это делается так? Просто я долго думал, пытаясь применить все свои знания из учебника, получается только так, но ощущение, что есть какое-то более хорошее решение, которое я не могу найти. Об уровне моих знаний, основы синтаксиса, немного работы с файлами, открыть закрыть положить вытащить и всё. Если кому интересно, кто знает может, Кузнецов, Симдянов Самоучитель PHP 7 (2018) (я на 16 главе). Вобщем, как бы вы решили эту задачу? И заранее спасибо)
  • Вопрос задан
  • 514 просмотров
Решения вопроса 2
profesor08
@profesor08 Куратор тега PHP
По простому

class Finder {
  public static function find($func) {
    return file_get_contents("https://www.php.net/manual/ru/function.{$func}.php");
  }
}


По интересному, можно воспользоваться поиском на самом сайте, и использовать его механизм. Там ссылка вида https://www.php.net/search.php?show=quickref&patte...
file_get_contents("https://www.php.net/search.php?show=quickref&pattern={$func}");


Можешь еще интереснее, собирать ссылку самостоятельно, например
class Finder {
  public static function find($func) {
    $url = "https://www.php.net/search.php";

    return file_get_contents($url . http_build_query([
      "show" => "quickref",
      "pattern" => $func
    ]));
  }
}
Ответ написан
Комментировать
Jump
@Jump
Системный администратор со стажем.
Вобщем, как бы вы решили эту задачу?
Элементарно - приняли на вход название функции, сделали запрос к локальной базе данных хранящей тексты с описанием функций с сайта php.net, выдали результат.
Это гораздо быстрее и эффективнее чем делать каждый раз запрос к стороннему ресурсу, и парсить текст оттуда.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы