PHP - поиск в массиве - PullRequest
0 голосов
/ 31 мая 2011

Я пробовал поискать в Google в течение последнего часа и пытался найти множество способов поиска в массиве.

Моя цель - найти ключевое слово в URL, а ключевые слова - в текстовом файле.

Это то, что у меня есть, но не работает.

$file = "keywords.txt";
$open = fopen($file,'r');
$data = fread($open,filesize($file));
$data = explode(" ",$data);
$url = (!empty($_SERVER['HTTPS'])) ? "https://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] : "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
$url = parse_url($url); //parse the URL into an array

foreach($data as $d)
{
    if(strstr($d,$url))
    {
    echo "yes";
    }
}

Это работает БЕЗ текстового файла или массива - но это не то, что я хочу.

Буду признателен, если кто-нибудь сможет мне помочь.

1 Ответ

0 голосов
/ 31 мая 2011

Вот как я бы это сделал:

$file = "keywords.txt";
$open = fopen($file,'r');
$data = fread($open,filesize($file));
$data = explode(" ",$data);
$url = (!empty($_SERVER['HTTPS'])) ? "https://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'] : "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
$url = parse_url($url); //parse the URL into an array
foreach($data as $d){
  if(in_array($d,$url)){
    echo "yes";
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...