Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.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,我有以下选项来填充变量: $stmt = $dbh->query('SELECT * FROM agendamentos'); while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { print_r ($row); } 正如您所看到的,一切都很好,打印显示了与过滤器匹配的所有数据 但是,当我尝试在之后打印数组时,它是空的,没有数据,类似这样: $stmt = $dbh->query('SELECT * FROM agendamentos'

我有以下选项来填充变量:

$stmt = $dbh->query('SELECT * FROM agendamentos');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
print_r ($row);
}
正如您所看到的,一切都很好,打印显示了与过滤器匹配的所有数据

但是,当我尝试在之后打印数组时,它是空的,没有数据,类似这样:

$stmt = $dbh->query('SELECT * FROM agendamentos');
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
}
print_r ($row);

我对php有点陌生,所以我想我缺少了一些关于数组的内容。

这就是循环的工作方式,如果您想在循环结束后获得数据,只需将其保存在一个变量中即可

$stmt = $dbh->query('SELECT * FROM agendamentos');
$result=array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$result[]=$row;
}
print_r ($result);

注意。输出将是数组的数组

这就是循环的工作方式,如果希望在循环结束后获得数据,只需将其保存在一个变量中即可

$stmt = $dbh->query('SELECT * FROM agendamentos');
$result=array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$result[]=$row;
}
print_r ($result);

注意。输出将是数组的数组

只能在while循环中使用数组$row,但要将其取出。。。 建议您在循环之前创建一个空数组 并将row的值推入其中,您可以通过访问数组在循环外部获取它。做这样的事

 $stmt = $dbh->query('SELECT * FROM agendamentos');
$row_result = array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
  array_push($row_result,$row);
}
echo "<pre>";
var_dump($row_result);
echo "</pre>";
die;
$stmt=$dbh->query('SELECT*FROM agendamentos');
$row_结果=数组();
而($row=$stmt->fetch(PDO::fetch\U ASSOC)){
数组\u push($row\u result,$row);
}
回声“;
变量转储($row\U结果);
回声“;
死亡

只能在while循环中使用数组$row,但要将其取出。。。 建议您在循环之前创建一个空数组 并将row的值推入其中,您可以通过访问数组在循环外部获取它。做这样的事

 $stmt = $dbh->query('SELECT * FROM agendamentos');
$row_result = array();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
  array_push($row_result,$row);
}
echo "<pre>";
var_dump($row_result);
echo "</pre>";
die;
$stmt=$dbh->query('SELECT*FROM agendamentos');
$row_结果=数组();
而($row=$stmt->fetch(PDO::fetch\U ASSOC)){
数组\u push($row\u result,$row);
}
回声“;
变量转储($row\U结果);
回声“;
死亡

在循环边添加打印($row),这是主要功能!如果
$row
不是空的,您认为
while
循环将如何结束?在while循环中添加print\r($row)您想要的,这是主要功能!如果
$row
不是空的,那么
while
循环将如何结束?就这样!在while之外获得了数组数据,但是当我尝试使用echo$row_结果['hora']处理数据时,仍然有“Undefined index:hora”$行\结果以数组的形式出现。仔细选择你要选择的目标。分析从var_转储返回的数组,以了解正在获取的内容。。您还可以在var\u转储之前执行array\u value($row\u result)。这将有助于更好地安排其中的数组,我明白了,但是如何获得“hora”的值呢?垃圾场是这样的。0=>array(size=4)'id'=>string'1'(length=1)'hora'=>string'08:00:00.0000'(length=13)'paciente'=>string'ADRIANO'(length=7)'observacao'=>string'Agendado para 16:50'(length=19)使用此$row_结果[0]['hora';为了得到第一个结果的时间。但是为了得到所有的结果,我建议你这样做,如果(isset($row_result[0]){for($i=0;$iarray(size=4)'id'=>string'1'(length=1)'hora'=>string'08:00:00.0000'(length=13)'paciente'=>string'ADRIANO'(length=7)'observacao'=>string'Agendado para 16:50'(length=19)使用此$row_结果[0]['hora';为了得到第一个结果的时间。但是为了得到所有的结果,我建议你这样做,如果(isset($row_result[0]){for($i=0;$i