PHP 回显列表

标签 php mysql

我的编码有两个部分,第一部分将回显开始日期和结束日期之间的日期(我可能的日期)。第二部分回显存储在 MYSQL 数据库中的日期(事件日期)。我现在遇到的问题是当我尝试回显变量以获取可能的日期和事件日期时。它们在各个部分中回显完整列表,但在最后一部分中,它仅回显两个变量列表中的最后一个值。我尝试将它们设置为全局变量,但仍然得到相同的结果。代码如下:

 <?php
 //Section one//
$date1 = '10/06/2014';
$date2 = '30/06/2014';

function returnDates($fromdate, $todate) {
 $fromdate = \DateTime::createFromFormat('d/m/Y', $fromdate);
    $todate = \DateTime::createFromFormat('d/m/Y', $todate);
    return new \DatePeriod(
    $fromdate,
    new \DateInterval('P1D'),
    $todate->modify('+1 day')
    );
}

$datePeriod = returnDates($date1, $date2);
foreach($datePeriod as $date) {
     $possible=($date->format('dmY'));
}
//section two - Event dates in the MYSQL database//


 $con=mysqli_connect("localhost","apple","Orange1","cal");
  // Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

$result = mysqli_query($con,"SELECT * FROM events");

while($row = mysqli_fetch_array($result)) {
  $dateday = $row['Day'];
  $datemonth = $row['Month'];
  $dateyear = $row['Year'];

  if($datemonth<"12"){
  $newmonthdate=("0$datemonth");
  }else{
  $newmonthdate=("$datemonth");
 }

   $taken=("$dateday$newmonthdate$dateyear");
}

// Section three - Removing 'event dates list' from 'possible dates list' //

echo "test"."<br>";
echo "$possible"."<br>";
echo "$taken"."<br>";



?>

计划从可能的日期中删除存储在 MYSQL 数据库中的事件日期以生成新列表,但要确保 $possible 和 $taken 代表上一节中的正确值,但事实并非如此。

我目前得到的是:
测试
30062014
17082014

而我应该得到:
测试
10062014

最佳答案

您正在覆盖循环(foreach、while)中的变量 $possible 和 $taken。

您可以使用数组:

$possible=array(); # before foreach loop!
...
$possible[]=($date->format('dmY'));

或者只是将其全部添加为字符串(取决于您的需要):

$possible=""; # before foreach loop!
...
$possible.= ($date->format('dmY'))."<br>";

关于PHP 回显列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24390886/

相关文章:

php - 如何将两个 Laravel Eloquent 查询合并为一个查询(所以我访问数据库一次而不是两次)

mysql - Magento -- MySQL 大量 CPU 使用率,然后在批量更新产品类别时失败

通过 SSH 隧道的 MySQL 连接 - 如何指定其他 MySQL 服务器?

MySQL-一次更新记录组

php - mysql 在 php.ini 中已启用,但我仍然收到 Call to undefined function mysql_connect()

php - 单击复选框时立即更新 mysql 数据库

php - 如何使 "php -S"在本地网络上工作?

PHP 将部分 MySQL 数据编码为 JSON

php - 在 Joomla 中找不到类 'DOMDocument'

php - 如何正确转义 JSON 字符串以便与 MySQL INSERT INTO 命令一起使用?