Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Пытаюсь реализовать, что бы каждую минуту обновлялись стримы twitch на главной.
public function __construct(Streams $id)
{
parent::__construct();
$this->id = $id;
}
public function handle()
{
$stream = $this->id->first();
$twitch_api = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/'.$stream->name));
if($twitch_api->stream == null) $live = 0;
else $live = 1;
$update = Streams::where('id', $stream->id)->firstOrFail();
switch($live){
case 0:
break;
case 1:
break;
}
$update->status = $live;
$update->save();
$this->info("Streams updated");
}
С first() код работает, обновляется только первая таблица, мне нужно что бы все обновлялись, как это реализовать. Правильно ли я это делаю вообще в целом.
Я бы рекомендовал это прописать в новой команде для artisan и ее зафигачить через Schedule в кроне.
https://laravel.com/docs/5.2/artisan#writing-commands
https://laravel.com/docs/5.2/scheduling
Не в сети
Я бы рекомендовал это прописать в новой команде для artisan и ее зафигачить через Schedule в кроне.
https://laravel.com/docs/5.2/artisan#writing-commands
https://laravel.com/docs/5.2/scheduling
У меня там это и прописано. Проблема в том что обновляется только верхняя таблица, а мне нужно что бы все. Насколько я понимаю, мне надо получить $id, но я не понимаю как это сделать в команде
Если ты не поймешь что тебе надо, то как же другие справятся?))
Тебе надо для всех своих Streams сделать то, что в handle?
Или же выборочно для некоторых id? Если выборочно, расскажи откуда они должны взяться?
Не в сети
Если ты не поймешь что тебе надо, то как же другие справятся?))
Тебе надо для всех своих Streams сделать то, что в handle?
Или же выборочно для некоторых id? Если выборочно, расскажи откуда они должны взяться?
Да, для всех стримов, что бы все обновлялись, а не самый первый.
как-то так видимо
public function handle()
{
$streams = Streams::all();
foreach ($streams as $stream)
{
$twitch_api = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/'.$stream->name));
if($twitch_api->stream == null) $live = 0;
else $live = 1;
$stream->status = $live;
$stream->save();
$this->info("Streams updated");
}
}
Не в сети
как-то так видимо
public function handle()
{
$streams = Streams::all();
foreach ($streams as $stream)
{
$twitch_api = json_decode(file_get_contents('https://api.twitch.tv/kraken/streams/'.$stream->name));
if($twitch_api->stream == null) $live = 0;
else $live = 1;$stream->status = $live;
$stream->save();
$this->info("Streams updated");
}
}
Большое спасибо. Странно, что я сам не додумался, что то меня совсем в другое русло понесло с мыслями )
Страницы 1