Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 从列中选择子字符串_Php_Mysql - Fatal编程技术网

Php 从列中选择子字符串

Php 从列中选择子字符串,php,mysql,Php,Mysql,我有这个功能 public function returnArticlesByTag($tag) { return Db::queryRows(' SELECT * FROM `articles` WHERE `keywords` like `%?%` limit 10; ', array($tag)); } public static function queryRows($query, $parameters = array()) { $return = self::$connecti

我有这个功能

  public function returnArticlesByTag($tag)
{
return Db::queryRows('
SELECT * FROM `articles` WHERE `keywords` like `%?%` limit 10;
', array($tag));
}

public static function queryRows($query, $parameters = array())
{
$return = self::$connection->prepare($query);
$return->execute($parameters);
return $return->fetchAll();
}
我想知道字符串“$tag”是否包含在“关键字”列的表“article”中

当我用字符串调用函数'returnArticlesByTag'时,我有一个错误

未捕获PDOException:SQLSTATE[42S22]:未找到列:在C:\laragon\www\models\Db.php:37中的“where子句”中找到1054未知列“?%”

数据库中37是$return=self::$connection->prepare($query)的行

我试着使用可能重复的答案。现在我没有任何错误。通过选择选定的0行。这是不正确的

public static function queryMYRows($query, $parameters = array())
  {
    $return = self::$connection->prepare($query);
    $return->execute(array('%value%'));
    var_dump($return);
    return $return->fetchAll();
  }
public function returnArticlesByTag($tag)
  {
    return Db::queryMYRows('
    SELECT * FROM `articles` WHERE `keywords` like ? limit 10;
    ', array($tag));
  }

@revo我不确定这是否是重复的,因为我有问题在我的项目中使用他的答案检查这个答案。它有一个关于如何在LIKE中发送数组的示例。