Опубликовано: 22 октября 20187 г Здравствуйте, вот код: foreach(\IPS\Db::i('stats')->select('hero, newcolour', 'stats_dotaplayers', ['gameid=?', $row['gameid']]) as $dotaPlayer) { $hero = mb_strtoupper($dotaPlayer['hero']); $players[intval($dotaPlayer['newcolour'])] = $this->getHero($hero) ? $this->getHero($hero) : 'BLANKX'; } Здесь колонка hero может быть пустой, как указать для нее заглушку?
Опубликовано: 23 октября 20187 г Так сделайте в методе getHero проверку на пустоИ тогда$players[intval($dotaPlayer['newcolour'])] = $this->getHero($hero); Либо foreach(\IPS\Db::i('stats')->select('hero, newcolour', 'stats_dotaplayers', ['gameid=?', $row['gameid']]) as $dotaPlayer) { $players[intval($dotaPlayer['newcolour'])] = $dotaPlayer['hero'] ? $this->getHero(mb_strtoupper($dotaPlayer['hero'])) : 'BLANKX'; }
Опубликовано: 23 октября 20187 г Автор Так сделайте в методе getHero проверку на пусто Я пробовал в шаблоне, но там не работает, так как идут какие-то символы: http://prntscr.com/l9cpv9 нужно именно поле проверять.
Опубликовано: 24 октября 20187 г Я пробовал в шаблоне,Не шаблон. public function getHero($hero) { if (!$hero) { return 'BLANKX'; } // Другой код }
Опубликовано: 24 октября 20187 г Без БОМ надо.Не знаю, что у Вас за редактор, и где искать настройки.Прикрепите php-файл
Опубликовано: 24 октября 20187 г Ну, у Вас значение переменной $hero может быть чем угодно.Вы в базе смотрели значения?
Опубликовано: 25 октября 20187 г Автор ку ку А понял, скрины не грузит. Я так и не решил этот вопрос, гляньте плиз чуть позже скрины. Там я показал, что ячейки пустые. Изменено 25 октября 20187 г пользователем TemKa_SD
Опубликовано: 25 октября 20187 г Там я показал, что ячейки пустые. Там могут быть невидимые символыИзмените значение на 0 и посмотрите
Опубликовано: 28 октября 20187 г Автор Как всегда, вы были правы. http://prntscr.com/lbjn6p Как указать для такого? Сделал так, не работает: http://prntscr.com/lbjnio Поставил 0 в ячейке - работает. Как с этими символами быть? Оно идет с игрового приложения, врятли там это испарвлю.
Здравствуйте, вот код:
foreach(\IPS\Db::i('stats')->select('hero, newcolour', 'stats_dotaplayers', ['gameid=?', $row['gameid']]) as $dotaPlayer) { $hero = mb_strtoupper($dotaPlayer['hero']); $players[intval($dotaPlayer['newcolour'])] = $this->getHero($hero) ? $this->getHero($hero) : 'BLANKX'; }Здесь колонка hero может быть пустой, как указать для нее заглушку?