只打印定义的str_word_count匹配项


Only print defined str_word_count matches?

如何使用(str_word_count($str, 1));作为一个数组,省略分配给数字的单词…因此,Hello [1] => World [2] => This [3] => Is [4] => a [5] => Test ) 6只输出我定义的数字,例如[1]和[2]来省略。这是一个只留下Hello World的测试,或留下Hello test的[1]和[6]…

您可以对array_intersectstr_word_countexplode执行此操作

$input  = 'Hello World This Is a Test';
$allow  = array('Hello', 'Test');
$data   = explode(' ', $input);
// or your way
$data   = str_word_count($input, 1);

$output = array_intersect($data, $allow);
$count  = count($output);
echo 'Found ' + $count;
var_dump($output);

PHP 5.3方案

$input  = 'Hello World This Is a Test';
$allow  = array('Hello', 'World');
$array = array_filter(
    str_word_count( $input, 1 ),
    function( $v ) use( $allow ) {
        return in_array( $v, $allow ) ? $v : false;
    }
);
print_r( $array );