すべてのサイト コードを mysql_* 関数の使用から PDO に変換しています。PDO に関する PHP ドキュメントは、私のニーズに対して明確ではありません。使用する機能を提供しますが、さまざまなシナリオでそれらを説明するために詳細には入りません。
基本的に、mysql全文検索があります:
$sql = "SELECT ... FROM search_table WHERE MATCH(some_field) AGAINST ('{$searchFor}*' IN BOOLEAN MODE)";
実際のステートメントはもっと長くなりますが、これが基本的に行うことです。
私の質問は、これをどのように PDO に組み込むかです。
プレース マーカーの周りに引用符を使用するつもりはないことはわかっていますが、AGAINST() 関数では引用符を省略しますか? それらを含めますか?それらを省略した場合、ワイルドカード記号などはどうなりますか?
$sql = $this->db->prepare("SELECT ... FROM search_table WHERE MATCH(some_field) AGAINST(:searchText IN BOOLEAN MODE");
$sql->bindValue(':searchText', $searchFor . '*');