在 MySQL 中使用 FULLTEXT 是否需要我在 PHP 中使用不同的语法来检索结果?

Does using FULLTEXT in MySQL require for me to use a different syntax in PHP to retrieve the results?

这是我的代码:

$terminosBuscados = 'Vender la porteria'

$x = $conectarDB->prepare(" 
    SELECT DISTINCT 
    titulo,
    FROM_UNIXTIME(fecha, '%d-%m-%Y') AS fecha,
    cuerpo,
    tipoContenido,
    autor
    FROM searchIndex 
    WHERE match(titulo) 
    AGAINST (' ? ' IN BOOLEAN MODE)
    ORDER BY contenidoID DESC
    ");
$x->bindParam(1, $terminosBuscados);
$x->execute();
$y = $x->fetchAll(PDO::FETCH_ASSOC);

这根本没有显示任何结果 ($y returns null),当在 phpMyAdmin 中尝试查询本身确实有效并显示结果时。

我刚刚在 table 中添加了一个 FULLTEXT 索引,并调整了我的工作代码以使用该索引。

为了mysql'? ' 是一个字符串,不会用作 palce holfer。

如果您需要空格,请使用 CONCAT(' ',?,' ')

$x = $conectarDB->prepare(" 
    SELECT DISTINCT 
    titulo,
    FROM_UNIXTIME(fecha, '%d-%m-%Y') AS fecha,
    cuerpo,
    tipoContenido,
    autor
    FROM searchIndex 
    WHERE match(titulo) 
    AGAINST (CONCAT(' ',?,' ') IN BOOLEAN MODE)
    ORDER BY contenidoID DESC
    ");
$x->bindParam(1, $terminosBuscados);
$x->execute();
$y = $x->fetchAll(PDO::FETCH_ASSOC);