PHP使用空格爆炸,但如何找到两个单词匹配

PHP使用空格爆炸,但如何找到两个单词匹配,php,explode,Php,Explode,对于新闻脚本,我想识别用户填写的关于艺术家的内容。因此,如果他们提到一位艺术家,我想将其放入外部数据库,当有人查看文章时,他们可以看到他们正在阅读的文章附带的相关艺术家。但我有一种创造力的问题,这让我退缩了。我使用分解函数来分隔单词: function multiexplode ($delimiters,$string) { $ready = str_replace($delimiters, $delimiters[0], $string); $launch = explode(

对于新闻脚本,我想识别用户填写的关于艺术家的内容。因此,如果他们提到一位艺术家,我想将其放入外部数据库,当有人查看文章时,他们可以看到他们正在阅读的文章附带的相关艺术家。但我有一种创造力的问题,这让我退缩了。我使用分解函数来分隔单词:

function multiexplode ($delimiters,$string) {
    $ready = str_replace($delimiters, $delimiters[0], $string);
    $launch = explode($delimiters[0], $ready);
    return  $launch;
}

$pieces = multiexplode(array(",",".","|",":","<",">"," "), $_POST['article_content']);

因此,如果我提到艺术家Afrojack,我可以在$pieces数组中找到它。工作正常,但发现了一个问题。例如,如果用户提到Nicky Romero,艺术家分布在两个阵列上,我不可能在充满艺术家的数据库中找到它。所以我想看两个词,三个词和所有的东西,但我必须有一个简单的思考方式。因此,我的问题是,如何解决脚本只能找到一个单词艺术家的问题。

据我所知,使用preg\u match\u all如何知道哪些单词对或组与艺术家名称一致?你已经有名单了吗,或者你依赖于分割方法的结果吗?我实际上在查看它的功能,但我不知道如何在我的problem@JaredFarrish我确实有一个包含所有艺术家的数据库,但我认为考虑到PHP提供的方法,我会反过来使用SQL,但我不确定如何使用yet@JaredFarrish由于可能有多个艺术家,我不确定如何从SQL端继续搜索