douman6245
2018-05-19 06:43
浏览 32
已采纳

如何从codeigniter控制器类调用coinbase api方法? [重复]

This question already has an answer here:

I have added coinbase php library inside application/third_party folder. Now I want to add a normal php file using that library in codeigniter root folder to add content to log file and send email to notify about transactions?

  • Is it okay if add a core php file in root? How would I require that coinbase plugin and load database into the said php file?
  • Is it a good practice in mvc? What are other alternatives?

UPDATE: I created a controller in application/controlers with below code

class Coinbase extends CI_Controller
{
    public function __construct()
    {
        parent::__construct();
        $this->load->database();   
    }

    function readnotifications()
    {
        echo APPPATH;
        require_once(APPPATH.'third_party/coinbase-php/vendor/autoload.php');
        use Coinbase\Wallet\Client;
}
}

I get below error.

Parse error: syntax error, unexpected 'use' (T_USE)

UPDATE2:

$config['composer_autoload'] = APPPATH.'third_party/coinbase-php/vendor/autoload.php';

class Coinbase extends CI_Controller
{
    function readnotifications()
    {

$apiKey = "sss ";
$apiSecret =  "sss";
        namespace Coinbase\Wallet;
        use Coinbase\Wallet\Client;
        use Coinbase\Wallet\Configuration;
        use Coinbase\Wallet\Enum\Param;
$configuration = Configuration::apiKey($apiKey, $apiSecret);
$client = Client::create($configuration);
$authenticity = $client->verifyCallback($raw_body, $signature); // boolean
}
}

Parse error: syntax error, unexpected 'Coinbase' (T_STRING), expecting \ (T_NS_SEPARATOR)

Any idea how to resolve?

</div>
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongzuan4860 2018-05-19 09:43
    已采纳

    In you application/config/config.php search for $config['composer_autoload'] and set you third party package autoload.php file path as its value

    $config['composer_autoload'] = '/path/to/vendor/autoload.php';
    

    Then you can simple use any of your package classes like this

    function readnotifications()
    {
            $client = Coinbase\Wallet\Client;
    }
    

    Also have a look at this https://www.codeigniter.com/user_guide/general/autoloader.html

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题