2016-08-07 13 views
0

Mailjet API PHP wrapperをCodeigniterインストールにライブラリとして統合するにはどうすればよいですか?CodeigniterライブラリとしてMailjet API v3ラッパーを統合

はそれがapplication/libraries/Mailjetthe repositoryの内容を配置し、その後、以下に示すようMailjetを初期化application/librariesで​​ファイルを作成するのと同じくらい簡単ですか?

require 'Mailjet/vendor/autoload.php'; 

use \Mailjet\Resources; 

$mj = new \Mailjet\Client(getenv('MJ_APIKEY_PUBLIC'), getenv('MJ_APIKEY_PRIVATE')); 

私が正しい道にいるかどうか教えてください。ありがとう。

答えて

2

はい、あなたは正しい方向にあります。しかし、CIライブラリを作成する必要はありません。コントローラにはMailjetリポジトリライブラリも使用してください。 CI docsに記載されているように作曲家を使用してください。

CodeIgniterにComposerオートローダーを使用させる場合は、$ config ['composer_autoload']をTRUEに設定するか、application/config/config.phpでカスタムパスを設定してください。 APPPATH.'config/config.php'file

  • CodeIgniterのでgithubのリポジトリを使用するためのステップの命令によるステップ

    1. 設定$config['composer_autoload'] = TRUE;はで仕事をしていますAPPPATH場所
    2. に希望のリポジトリ/プロジェクトとcomposer.jsonファイルを置きますコンソール経由でcomposer installコマンドを実行すると、vendorなどの関連する
    3. 内のファイルやフォルダは、コントローラまたは他のコードでは、必要なときに

    例コントローラMailman.php

    <?php defined('BASEPATH') OR exit('No direct script access allowed'); 
    
    use \Mailjet\Resources; 
    
    class Mailman extends CI_Controller 
    { 
        private $apikey = 'apy__key__here'; 
        private $secretkey = 'apy__secret__here'; 
    
        protected $mj = NULL; 
    
        public function __construct() 
        { 
         // $this->mj variable is becoming available to controller's methods 
         $this->mj = new \Mailjet\Client($this->apikey, $this->apisecret); 
        } 
    
        public function index() 
        { 
         $response = $this->mj->get(Resources::$Contact); 
    
         /* 
         * Read the response 
         */ 
         if ($response->success()) 
          var_dump($response->getData()); 
         else 
          var_dump($response->getStatus()); 
        } 
    } 
    

    怒鳴るの例に示すように、明示的にMailjetを使用したい場合は、それを使用してください(または任意の他の)リポジトリをCIライブラリから取得するには、docsのカスタムライブラリを作成し、上のコードをマージする方法をチェックしてください。私は不必要に十分なライブラリを読み込んで解析するのを避けるため、この方法でリポジトリを使用します。

    +0

    上記の例では、 'src/Mailjet'ファイルはどこにありますか? – 585connor

    +0

    'APPPATH.'src/Mailjet''? – 585connor

    +0

    心配しないで、私はそれを理解しました。ありがとう:) – 585connor

    関連する問題