Php 如何访问特定行';从获取的数组中删除列值,而不循环
我有一个新闻条目表(包含字段标题、内容、日期、来源和主索引)。使用Php 如何访问特定行';从获取的数组中删除列值,而不循环,php,sql,arrays,Php,Sql,Arrays,我有一个新闻条目表(包含字段标题、内容、日期、来源和主索引)。使用$newsrow['title']我成功地获取了第一行项目的标题,但此后无法访问下一行的项目。我尝试了$newsrow[#]['title'](我的意思是$newsrow[0]['title']来访问第一行的标题),但是该标志:警告:非法字符串偏移量。我会避免在这里使用循环,因为其中有一些异常,我认为这里可能有更直接的方法 以下是我正在调用的函数(newfunction.php): 完成时,以下是表格结构: 如果您能了解如何在不
$newsrow['title']
我成功地获取了第一行项目的标题,但此后无法访问下一行的项目。我尝试了$newsrow[#]['title']
(我的意思是$newsrow[0]['title']来访问第一行的标题),但是该标志:警告:非法字符串偏移量
。我会避免在这里使用循环,因为其中有一些异常,我认为这里可能有更直接的方法
以下是我正在调用的函数(newfunction.php):
完成时,以下是表格结构:
如果您能了解如何在不循环的情况下访问特定行的值,我们将不胜感激。函数
fetch
从指针返回下一行(因此第一个调用返回第一行,第二个调用返回第二行,依此类推)。这就是为什么尝试使用$newsrow[#]['title']
访问时出错的原因。您实际上正在访问结果的第0列
回答您的问题:您可以使用data_seek()移动指针。这将导致:
$result->data_seek(#);
$row = $result->fetch_array(MYSQLI_BOTH);
希望这有帮助。函数
fetch
返回指针的下一行(因此第一个调用返回第一行,第二个调用返回第二行,依此类推)。这就是为什么尝试使用$newsrow[#]['title']
访问时出错的原因。您实际上正在访问结果的第0列
回答您的问题:您可以使用data_seek()移动指针。这将导致:
$result->data_seek(#);
$row = $result->fetch_array(MYSQLI_BOTH);
希望这有帮助。来自文档
(PHP5,PHP7)mysqli_result::fetch_数组——mysqli_fetch_数组-
获取结果行作为关联数组、数字数组或两者兼有
这只返回一行,而不是我怀疑您要查找的所有行
如果希望返回一个数组中的所有行,可以查看一下。给出的答案是(您不需要json_编码)
从文件中
(PHP5,PHP7)mysqli_result::fetch_数组——mysqli_fetch_数组-
获取结果行作为关联数组、数字数组或两者兼有
这只返回一行,而不是我怀疑您要查找的所有行
如果希望返回一个数组中的所有行,可以查看一下。给出的答案是(您不需要json_编码)
帮我个忙,做
var\u dump($row)代码>请。它只抛出第一行的详细信息:array(16){[0]=>string(1)“1”[“newstrack”]=>string(1)“1”[1]=>string(44).
帮个忙,做var\u dump($row);
请。它只抛出第一行的详细信息:array(16){[0]=>string(1)“1”[“newstrack”]=>string(1)“1”[1]=>string(44)…
不知道fetch\u数组
只返回了一行,感谢链接,我现在使用的是$row=mysqli\u fetch\u all($result,mysqli\u ASSOC)
并且它可以按照我的意图获取特定行的特定列的值。谢谢。不知道获取数组
只返回了一行,谢谢链接,我现在使用$row=mysqli\u获取所有($result,mysqli\u ASSOC)
并且它可以按照我的预期获取特定行的特定列的值。谢谢。不知道它只返回了一行,谢谢链接,我现在使用的是$row=mysqli\u fetch\u all($result,mysqli\u ASSOC)
并且它可以按照我的预期获取特定行的特定列的值。谢谢。不知道它只返回了一行,谢谢链接,我现在使用的是$row=mysqli\u fetch\u all($result,mysqli\u ASSOC)
并且它可以提取特定行的特定列的值,正如我所希望的。谢谢。
$newsrow = news_data($conn);
$result->data_seek(#);
$row = $result->fetch_array(MYSQLI_BOTH);
$json = mysqli_fetch_all ($result, MYSQLI_ASSOC);
echo json_encode($json );