Basic PHP Vimeo Advanced API Call

前端 未结 2 1434

This is a self Q&A.

I\'ve often looked around for help on using the Vimeo API, and always found the entry level examples and documentation very

相关标签:
2条回答
  • 2020-12-16 21:46

    Visite https://github.com/leandrocfe/PHPVimeoAPI_List_Private_Video

    List private videos from Vimeo | Access private videos

    1. Modify config.json info vimeo account;
    2. Access video.php and add vimeo_video_id get param. Ex: localhost/vimeo/video.php?id=123123123

      <?php
      
      //utf-8
      header('Content-Type: text/html; charset=utf-8');
      
      //lib vimeo
      use Vimeo\Vimeo;
      
      //métodos de inicialização
      $config = require(__DIR__ . '/init.php');
      
      //vimeo video id
      @$id = $_GET["id"];
      
      //isset get
      if(isset($id)){
      
          // vimeo class send config.json paramns
          $lib = new Vimeo($config['client_id'], $config['client_secret'], $config['access_token']);
      
          //get data vimeo video
          $me = $lib->request("/me/videos/$id");
      
          //iframe vídeo
          $embed = $me["body"]["embed"]["html"];
      
          //edit video size
          $default_size = 'width="'.$me["body"]["width"].'" height="'.$me["body"]["height"].'"';
          $new_size = 'width="420" height="220"';
      
          $embed = str_replace($default_size, $new_size, $embed);
      
          //autoplay
          $embed = str_replace('player_id=0', 'player_id=0&autoplay=1', $embed);
      
      }else{
      
          echo("Not find get id video");
      }
      ?>
      <!DOCTYPE html>
      <html>
          <head>
              <title>Vimeo Vídeo</title>
          </head>
          <body>
              <div><?php echo $embed ?></div>
              <div>
                  <p><b>Name: </b><?php print_r($me["body"]["name"]); ?></p>
                  <p><b>Description: </b><?php print_r($me["body"]["description"]); ?></p>
                  <p><b>Link: </b><?php print_r($me["body"]["link"]); ?></p>
                  <p><b>Likes: </b><?php print_r($me["body"]["embed"]["buttons"]["like"]); ?></p>
                  <p><b>Data Created: </b><?php print_r($me["body"]["created_time"]); ?></p>
                  <p><b>Data Modified: </b><?php print_r($me["body"]["modified_time"]); ?></p>
                  <p><b>Images: </b>
                      <?php print_r($me["body"]["pictures"]["uri"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][0]["link"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][1]["link"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][2]["link"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][3]["link"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][4]["link"]); ?> |
                      <?php print_r($me["body"]["pictures"]["sizes"][5]["link"]); ?>
                      </p>
              </div>
              <div><?php //print_r($me); //use for show all options ?></div>
          </body>
      </html>
      
    0 讨论(0)
  • 2020-12-16 21:53
    // Include the Vimeo API file. Download from here: https://github.com/vimeo/vimeo-php-lib
    require_once('vimeo.php');
    
    /*
     * Helper Function to Handle Vimeo Authentication
     */ 
        function authenticate_vimeo(){
            // Settings below.
            // You'll need to set these to your account's as show here: // Get from https://developer.vimeo.com/apps/new
    
            $vimeo_id = 'user12345'; // Get from https://vimeo.com/settings, must be in the form of user123456
            $consumer_key = '1234567';
            $consumer_secret = '1234567';
            $token = '1234567';
            $token_secret = '1234567';
    
            // Do an authentication call        
            $vimeo = new phpVimeo($consumer_key, $consumer_secret);
            $vimeo->setToken($token, $token_secret);        
            $vimeo->user_id = $vimeo_id;
    
            return $vimeo;
        }   
    
    /*
     * This is how you make a call to the Vimeo API
     */ 
        // Authenticate Vimeo
        $vimeo = authenticate_vimeo();
    
        // Try to access the API
        try {
            $args = array(
                'full_response' => true,
                'user_id'       => $vimeo->user_id, // This limits the request to the one user's videos
                'per_page'      => 50, // 50 is the max per page, use "page" parameter for more pages
            );
            $results = $vimeo->call('vimeo.videos.getUploaded', $args); // List of methods here: https://developer.vimeo.com/apis/advanced/methods
        }
        catch (VimeoAPIException $e) {
            $error = "Encountered an API error -- code {$e->getCode()} - {$e->getMessage()}";
        }
    
        // Do something with error or results
        if( isset($error) ) {
            print_r($error);
        } else {
            print_r($results); // This will be a gigantic PHP object of all videos and meta data
        }
    
    0 讨论(0)
提交回复
热议问题