gpt4 book ai didi

php - 从数据库中选择并存储在数组中

转载 作者:行者123 更新时间:2023-11-29 03:58:22 25 4
gpt4 key购买 nike

我想从数据库中选择一些数据并存储在一个数组中。假设我的数据库表中有一列“关键字”。我想选择关键字列类似于“自然”的所有行。

我正在尝试以下代码:

<?
$term= "nature";
$arr = array();

$sql = "select keyword from keywords where keyword LIKE '%$term%'";
$result = mysql_query($sql) or die(mysql_error());
$rows = mysql_fetch_array($result);
foreach ($rows as $row){
array_push($arr, $row['keyword']);
}

print_r($arr); //output: Array ( [0] => n [1] => n )

?>

所以 db 的结果应该只返回一个关键字 'nature',我需要将其存储在数组中。

  1. 为什么要存储同一个字符串两次? db 中没有任何其他行类似于术语 nature。
  2. 为什么它只存储数组中的第一个字母?它不应该存储“nature”而不是“n”吗?

请帮我解决这个问题。

最佳答案

应该是这样的

$term   = "nature";    
$arr = array();
$sql = "select keyword from keywords where keyword LIKE '%$term%'";
$result = mysql_query($sql) or die(mysql_error());
while( $row = mysql_fetch_assoc( $result ) ) {
arr[] = $row[ 'keyword' ];
}

在您的解决方案中,您仅从结果集中获取第一条记录作为数字索引数组。

顺便说一句 - 你知道以通配符开头的 LIKE 查询不能使用任何索引吗?

关于php - 从数据库中选择并存储在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6786788/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com