0

我正在开发一个主题标签系统,该系统允许用户在文章帖子中使用主题标签。我整理出所有带有标签的单词,使用preg_match_all('/#([\p{L}\p{Mn}]+)/u',$t,$matches);它将它们读入一个数组。我需要做的是将每个带有标签的单词存储到 mySQL 数据库中的一行中,以便可以搜索它们以查找最常见的单词以构建一种趋势系统。

我在将数组存储到数据库中的单独行时遇到问题,而且我也很困惑如何在不知道需要多少行的情况下执行此操作,因为每篇文章都有不同数量的标签词。任何帮助将不胜感激!

编辑 - 我想出了一个循环,但现在它一直将单词 Array 读入我的数据库,foreach($matches as $a => $b) { $query1 = "INSERT INTO hashtags (hashtags) VALUES ('$matches[ $a]');";

$q = mysql_query($query1) or die ('错误发布数据');

} 有什么建议么?

4

1 回答 1

0

在这里,我为 sql 中的插入行做了一些示例。

$t= "<b>example: </b><div align=left>this is a test</div>";

$matches = array();

preg_match_all('|<[^>]+>(.*)</[^>]+>|U',$t,$matches);
print_r($matches);

for ($i=0; $i<count($matches);$i++)
{
    for ($k=0; $k<count($matches[$i]);$k++)
    {
        $arrayKeyword[] = array($matches[$i][$k]);
    }
    $value = implode(",",$arrayKeyword);
    $sql = "Insert into <tablename> value (".$value.")";
}
于 2013-10-09T05:50:28.857 回答