php - 用变量中的数字增加变量 + PHP

标签 php mysql date variables

我有一些这样的变量:

$_8 = 0; $_9 = 0; $_10 = 0; $_11 = 0; $_12 = 0; $_13 = 0; $_14 = 0; $_15 = 0; $_16 = 0; $_17 = 0; $_18 = 0; $data = array();

然后我执行以下操作:

$vistoday = $app['db']->fetchAll('SELECT `Datum Bezoek 1` FROM `psttodo-uit` WHERE CAST(`Datum Bezoek 1` AS DATE) = CURRENT_DATE AND PB = 1');

foreach($vistoday as $v){
    $date = strtotime($v['Datum Bezoek 1']);
    $hours = (int)date('h', $date);
    $minutes = (int)date('i', $date);

    if($minutes > 30)
    {
        $hours = $hours + 1;
        $count = ${"_" . $hours} + 1;
        $data[$hours] = $count;
    }
    else
    {
        $data[$hours] = ${"_" . $hours}+1;
    }
}

这些是我从数据库中提取的日期:

  • 2014-02-27 08:25:34
  • 2014-02-27 08:50:34
  • 2014-02-27 08:55:34

当我输出 $data 时,我得到:

array (size=2)
   8 => int 1
   9 => int 1

但是通常情况下,键9的值应该是2。所以他不会递增,他只是在没有的情况下加1。有人可以帮我解决这个问题吗?

最佳答案

Yoг不需要像$_8这样的变量

foreach($vistoday as $v){
    $date = strtotime($v['Datum Bezoek 1']);
    $hours = (int)date('h', $date);
    $minutes = (int)date('i', $date);

    $hours = round($hours + $minutes / 61); // if $minutes > 30 ceil else floor
    $data[$hours] = isset($data[$hours]) ? $data[$hours] + 1 : 1;
}

关于php - 用变量中的数字增加变量 + PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22075559/

相关文章:

php - 通知 : Undefined index: XXX - Does it really matter?

javascript - 除非按下按钮,否则禁用按钮

mysql - 如何在表的另一行和变量插入表?

sql - 使用三个参数创建日期

ruby - ROR + 不同格式的 Ruby 日期

php - laravel/laravel vs laravel/框架

php - 使用 preg_replace 删除一个 div

php - 我可以使用哈希密码连接到数据库吗?

javascript - AJAX 和 SQL 重复结果

php - php.ini 中设置的默认欧洲时区,但 date_default_timezone_get() 返回 'UTC'