Php 如何仅打印数组的索引
使用select查询可以从数据库中选择一些数据 我使用while循环获取数据Php 如何仅打印数组的索引,php,mysql,arrays,Php,Mysql,Arrays,使用select查询可以从数据库中选择一些数据 我使用while循环获取数据 while($row=mysql_fetch_array($query1)) { } 现在我只想打印$row的索引 我尝试使用以下语句打印,但它打印索引和值(Key==>value) 我也尝试了数组_keys(),但它对我也没有帮助 echo implode(array_keys($row)); 请帮我把这个拿出来 我只需要打印索引。您应该在内爆函数中传递分隔符(粘合文本) 对于逗号分隔的数组键,可以使用以下代
while($row=mysql_fetch_array($query1))
{
}
现在我只想打印$row的索引
我尝试使用以下语句打印,但它打印索引和值(Key==>value)
我也尝试了数组_keys(),但它对我也没有帮助
echo implode(array_keys($row));
请帮我把这个拿出来
我只需要打印索引。您应该在内爆函数中传递分隔符(粘合文本)
对于逗号分隔的数组键,可以使用以下代码
echo implode(",",array_keys($row));
您将以关联数组和数字数组(默认值)的形式获取结果行,请参阅上的手册 如果只需要数字数组,请使用:
while($row=mysql_fetch_array($query1, MYSQL_NUM))
顺便说一句,您应该切换到PDO或mysqli,因为
mysql\u*
函数已被弃用。您的中的$row
变量在每次迭代时都会被覆盖,因此foreach
不会像您期望的那样工作
将每个$row
存储在一个数组中,如下所示:
$arr = array();
while($row=mysql_fetch_array($query1)) {
$arr[] = $row;
}
现在,要打印数组键,可以使用一个简单的内爆()
:
$query1 from而($row=mysql\u fetch\u array($query1))应该是来自的结果
$query1 = mysql_result("SELECT * FROM table");
//then
while($row=mysql_fetch_array($query1))
要仅获取密钥,请使用
你所说的指数是什么意思?数组的索引(在您的案例列名称中)或记录的id?我需要打印键而不是值。在第一个和第二个循环中是否使用相同的$row
?如果是-则在第一个循环中覆盖它,然后在第二个循环中只使用一个循环得到一行。使用上面的语句也可以像这样打印0、sa、1、ff、2df,但我只需要键值0、1、2。那么您想做什么呢?glue
参数是可选的--内爆()
没有它也可以工作。@sandeep jeroen为您的问题提供了最佳解决方案。简单且最好,无需额外工作:-)
echo implode(', ', array_keys($arr));
$query1 = mysql_result("SELECT * FROM table");
//then
while($row=mysql_fetch_array($query1))
$query = "SELECT fields FROM table";
$result = mysql_query($query);
while ($row = mysql_fetch_row($result)) {
print_r(array_keys($row));
}