0

在 mysql_query 中给出了两行,我希望每一行都放入一个变量 $date1 和 $date2。我的示例代码如下。

while($row=mysql_fetch_array($sql)) {
  $date1 = $row['TheDate'];
  $date2 = $row['TheDate'];
}
echo $date1;
echo $date2;
4

4 回答 4

0

虽然我不知道你为什么要拥有$date1$date2不是$date作为两个元素的数组,但这是一种方法:

$i = 1;
while($row=mysql_fetch_assoc($sql)){
    ${"date".$i} = $row['TheDate'];
    $i++;
}
echo $date1;
echo $date2;

一种正确的方法是将它们分配到一个数组中并像这样访问数据:

while($row=mysql_fetch_assoc($sql)){
    $date[] = $row['TheDate'];
}
echo $date[0];
echo $date[1];

要比较这两个日期,您可以执行以下操作:

$difference = $date2- $date1;

或在数组方法中:

$difference = $date[1] - $date[0];
于 2013-02-01T13:52:15.567 回答
0

我认为这就是你所需要的。

$dates = array();
$allData = array();
while($row=mysql_fetch_array($sql)){ // switch to mysqli or PDO
    $dates[] = $row['TheDate']; // $dates will have all the dates
    $allData[] = $row; // $allData will have all the data in the query
}

print_r($dates);

PS:

请考虑将您的代码切换到 MySQLi 或 PDO - MySQL 自 PHP 5.5 起已弃用,不再维护。

于 2013-02-01T13:54:46.730 回答
0
while($row=mysql_fetch_array($sql)){
     $results[] = $row['TheDate1']
}
echo $results[0];
echo $results[1];
于 2013-02-01T13:55:27.997 回答
0

你想要做的是创建一个数组:

$dates = array();
while($row=mysql_fetch_array($sql)) {
    $dates[] = $row['TheDate'];
}

var_dump($dates);

// Now if you *really* insist in having it in separate variables you could do:

list($date1, $date2) = $dates;

还:

请不要mysql_*在新代码中使用函数。它们不再被维护并被正式弃用。看到红框了吗?改为了解准备好的语句,并使用PDOMySQLi -本文将帮助您决定使用哪个。如果您选择 PDO,这里有一个很好的教程

于 2013-02-01T13:55:41.530 回答