Counting words on a html web page using php

前端 未结 5 786
难免孤独
难免孤独 2020-12-30 10:40

I need a PHP script which takes a URL of a web page and then echoes how many times a word is mentioned.

Example

This is a generic HTML page:

5条回答
  •  自闭症患者
    2020-12-30 11:29

    The one line below will do a case insensitive word count after stripping all HTML tags from your string.

    Live Example

    print_r(array_count_values(str_word_count(strip_tags(strtolower($str)), 1)));
    

    To grab the source code of a page you can use cURL or file_get_contents()

    $str = file_get_contents('http://www.example.com/');
    

    From inside out:

    1. Use strtolower() to make everything lower case.
    2. Strip HTML tags using strip_tags()
    3. Create an array of words used using str_word_count(). The argument 1 returns an array containing all the words found inside the string.
    4. Use array_count_values() to capture words used more than once by counting the occurrence of each value in your array of words.
    5. Use print_r() to display the results.

提交回复
热议问题