本地主机中的自定义Artisan命令

时间:2018-07-23 01:07:27

标签: php laravel command localhost artisan

这是一个Laravel项目。我在Windows机器(XAMPP)上有开发主机,在Ubuntu(Digital Ocean)上有生产/测试主机。当我在本地主机上运行命令时,它不会抱怨但什么也没发生。生产服务器上的同一命令就像一个超级按钮。命令逻辑涉及创建HTTP请求,获取响应并将其保存在数据库中的许多功能。数据库连接在两侧都是正确的。 有任何想法吗? 谢谢!

简化的命令文件

<?php

namespace App\Console\Commands;

use Illuminate\Console\Command;
use Illuminate\Http\Request;
use App\PageEngagedUsers;


class MinuteTasks extends Command
{

    protected $signature = 'tasks:min';

    protected $description = 'Does One-Minute Tasks';

    public function __construct()
    {
        parent::__construct();
    }

    public function handle()
    {
        $this->Update();
    }

    public function Update()
    {
        $allPages = Page::all();

        foreach ($allPages as $page) {
            try {    
                        $curl = curl_init();
                        curl_setopt_array($curl, array(
                            CURLOPT_RETURNTRANSFER => 1,
                            CURLOPT_URL => 'https://someurl.com/info?fields=values&featire=1&token=' . $page->token,
                            CURLOPT_USERAGENT => 'Codular Sample cURL Request'
                        ));
                        $response = curl_exec($curl);
                        curl_close($curl);

                        \Log::info($response);
                        \Log::info(json_encode($response));

                        $obj = json_decode($response);
                        $value = $obj->{'data'}[0]->{'values'}[1]->value;

                        $pageEngagedUsers = new PageEngagedUsers;
                        $pageEngagedUsers->value = $value;

                        $page->pageEngagedUsers()->save($pageEngagedUsers);

                        }
                  catch (\Exception $e) {

                  }
        }
    }

}

登录

local.INFO:
local.INFO: false

\Log::info($response)不提供任何内容。
\Log::info(json_encode($response))给出错误。

0 个答案:

没有答案