Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/229.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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,我有一个函数要使用,但我不知道这个函数的内容。我只知道函数返回一个关联数组和数组的键。函数返回的数据来自数据库。您能帮助我们如何从这个数组中读取数据吗?我对数组感到困惑。目前,我正在这样做: $array=myfunction($var); 如果(!空($array)) { while($row=mysql\u fetch\u array($array)) { 打印“$row[elem1] $row[elem2]”; } } 我认为错误是:警告:mysql_fetch_array()希望参数1

我有一个函数要使用,但我不知道这个函数的内容。我只知道函数返回一个关联数组和数组的键。函数返回的数据来自数据库。您能帮助我们如何从这个数组中读取数据吗?我对数组感到困惑。目前,我正在这样做:

$array=myfunction($var);
如果(!空($array))
{
while($row=mysql\u fetch\u array($array))
{
打印“$row[elem1]
$row[elem2]”;
}
}
我认为错误是:警告:mysql_fetch_array()希望参数1是资源,数组在。。。我知道有东西不见了,但我到现在还不能修复它。

类似的东西-

$array = myfunction($var);
foreach($array as $key => $row) {
    print"{$row['elem1']} {$row['elem2']}";
}

错误是正确的。。问题不是php中的关联数组,而是您没有使用有效的mysql资源

有关文档,请参阅

例子

$mysqli = new mysqli("localhost","root","","test");
$result = $mysqli->query("SELECT * FROM test");
$row = array() ;
echo "<pre>" ;
if($result->num_rows > 0)
{
    while($row = $result->fetch_array(MYSQLI_NUM))
    {
            print implode (",", $row) . PHP_EOL;

    }

}

您必须将资源标识符传递给mysql\u fetch\u array()函数

比如:

foreach($array as $key => $value){

   echo $key;
   echo '<br>';
   echo $value;
}

如果函数返回一个数组,那么为什么要在mysql_fetch_数组中使用它呢。这是无用的。用这个代替

echo '<pre>';
print_r($array);
echo '</pre>';
foreach($key=>$value的数组){
echo$key;
回声“
”; echo美元价值; }
这将打印整个阵列。 或者是一个简短的方法

echo';
打印(数组);
回声';

你的版本太复杂了,我真的不知道从哪里开始……嗨@Dr.Kameleon,我也一样。我写了我确切知道的东西。我知道的代码部分不正确,但只是一次尝试。“函数返回的数据来自数据库”@webb,但不清楚数据是否已被提取。询问者有一个数组,似乎想要在它上面迭代。@webbandit-OP清楚地表明该函数返回一个数组数组@nnichols不太清楚:)它声明“函数返回的数据来自数据库”,并从一侧使用mysql_fetch_array()函数,从另一侧使用“关联数组数组和数组键”。不太清楚…@webbandit—“我只知道函数返回一个关联数组”——对我来说似乎很清楚。
foreach($array as $key => $value){

   echo $key;
   echo '<br>';
   echo $value;
}
echo '<pre>';
print_r($array);
echo '</pre>';