За последние 24 часа нас посетили 17830 программистов и 1571 робот. Сейчас ищут 1268 программистов ...

count выдаёт не правильное значение

Тема в разделе "Laravel", создана пользователем 1ogaks, 12 дек 2017.

  1. 1ogaks

    1ogaks Новичок

    С нами с:
    12 дек 2017
    Сообщения:
    5
    Симпатии:
    0
    $itemsToday = \DB::table('games')
    ->join('bets', 'games.id', '=', 'bets.game_id')
    ->join('users', 'bets.user_id', '=', 'users.id')
    ->where('games.created_at', '>=', Carbon::today())
    ->count('itemsCount');
    Выдаёт не количество всех itemsCount за день, а количество bets за день
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    это не какая-то родная в php штука, а некое частное решение.

    а в чем отличие?
     
  3. 1ogaks

    1ogaks Новичок

    С нами с:
    12 дек 2017
    Сообщения:
    5
    Симпатии:
    0
  4. 1ogaks

    1ogaks Новичок

    С нами с:
    12 дек 2017
    Сообщения:
    5
    Симпатии:
    0
    http://rgho.st/6zFbD4HFj/thumb.png
     
  5. 1ogaks

    1ogaks Новичок

    С нами с:
    12 дек 2017
    Сообщения:
    5
    Симпатии:
    0
    Должно складывать все itemsCount с bets за сегодня, а он выдаёт число строк bets за сегодня
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    тогда не каунт а сум =)
     
  7. 1ogaks

    1ogaks Новичок

    С нами с:
    12 дек 2017
    Сообщения:
    5
    Симпатии:
    0
    Помогло, спасибо большое)
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    рад помочь
     
  9. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.583
    Симпатии:
    1.761
    Не, в теме про Laravel нормально, все поняли, что это фасад Laravel для работы с БД. Там это стандартная штуковина
     
  10. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    тут эти две буквы идут со слешиком, т.е. это в глобальном пространстве. Я не умею так фреймворк определять по двум буквам =) но я тебе верю.
     
  11. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.583
    Симпатии:
    1.761
    Ага, одна из странностей/особенностей фреймворка. Он фасады кидает, в том числе, и в глобальное пространство по дефолту. На самом деле это класс Illuminate\Support\Facades\DB, но при дефолтной настройки к нему можно обратиться и как глобальному классу.
    --- Добавлено ---
    Я ещё не смотрел, как это реализовано, но так можно "зарегистрировать" через конфигурацию любой класс.
     
  12. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я думал за такое придают анафеме
     
  13. mkramer

    mkramer Суперстар
    Команда форума Модератор

    С нами с:
    20 июн 2012
    Сообщения:
    8.583
    Симпатии:
    1.761
    Ну в Laravel много всего интересненького. Вот этот вызов:
    PHP:
    1. \DB::table('games')
    превращается на самом деле в
    PHP:
    1. app("db")->table("games")
    И всё, что делают многие фасады, это просто переадресуют вызовы в соответствующие сервисы из Service Container.