#php
#php
Вопрос:
Я снова ищу некоторую помощь.
Я нашел этот скрипт стоп-слов — я в основном удаляю все распространенные слова из строки.
<?php
$CommonWords = file_get_contents('http://localhost/stopwords.txt');
$CommonWords = explode("n", $CommonWords);
$CommonWords = array_map('trim', $CommonWords); // <---- ADD THIS LINE
$keywords = 'The <meta> tag’s keyword attribute is not the page rank panacea it once was back in the prehistoric days of Internet search. It was abused far too much and lost most of its cachet. But there’s no need to ignore the tag. Take advantage of all legitimate opportunities to score keyword credit, even when the payoff is relatively low. Fill in this tag’s text with relevant keywords and phrases that describe that page’s content';
$search_keywords = strtolower(trim($keywords));$arrWords = explode(' ', $search_keywords);
$arrWords = array_unique($arrWords);
foreach ($arrWords as $word) {
if (!in_array($word, $CommonWords) amp;amp; (trim($word) != ''))
{
$searchWords[] = $word;
}
}
print_r($searchWords);
?>
Вывод кода выглядит следующим образом:
Array ( [0] => [1] => tag’s [2] => keyword [3] => attribute [4] => page [5] => rank [6] => panacea [7] => prehistoric [8] => days [9] =>)
Как я могу отформатировать его так, чтобы выходные данные выглядели следующим образом: (без массива и чисел)
tag's, attribute, page, rank, panacea, prehistoric, days
Спасибо
Комментарии:
1.
print_r()
и его двоюродный братvar_dump()
на самом деле являются диагностическими инструментами, предназначенными для отображения внутренних структур массивов и объектов. Как вы обнаружили, они обычно не подходят для удобного вывода.
Ответ №1:
Используйте implode()
для результирующего массива.
$myString = implode( ', ', $myArray ); // Results in Item1, Item2, Item3, etc...
Комментарии:
1. отлично, у меня действительно была такая же проблема пару раз, и я придумал обходной путь. Это здорово, спасибо!
2. @Gerald Всегда пожалуйста. PHP обладает множеством фантастических встроенных функций — спустя почти 10 лет я все еще каждую неделю узнаю о 🙂
3. Если бы у меня была монета за каждый PHP-вопрос, на который ответом было
implode()
илиexplode()
. А еще лучше, если бы у меня было 10 баллов репутации.