PHP Class Alaouy\Youtube\Youtube

Show file Open project: alaouy/youtube Class Usage Examples

Public Properties

Property Type Description
$APIs array
$page_info array

Protected Properties

Property Type Description
$youtube_key string

Public Methods

Method Description
__construct ( $key ) Constructor $youtube = new Youtube(array('key' => 'KEY HERE'))
_parse_url_path ( string $url ) : string Parse the input url string and return just the path part
_parse_url_query ( string $url ) : array Parse the input url string and return an array of query params
api_get ( $url, $params ) : mixed Using CURL to issue a GET request
decodeList ( string &$apiData ) : array Decode the response from youtube, extract the list of resource objects
decodeMultiple ( string &$apiData ) : StdClass Decode the response from youtube, extract the multiple resource object.
decodeSingle ( string &$apiData ) : StdClass Decode the response from youtube, extract the single resource object.
getActivitiesByChannelId ( $channelId, $part = ['id', 'snippet', 'contentDetails'], $maxResults = 5 ) : array
getApi ( $name ) : mixed
getChannelById ( $id, $optionalParams = false, $part = ['id', 'snippet', 'contentDetails', 'statistics', 'invideoPromotion'] ) : StdClass
getChannelByName ( $username, $optionalParams = false, $part = ['id', 'snippet', 'contentDetails', 'statistics', 'invideoPromotion'] ) : StdClass
getChannelFromURL ( string $youtube_url ) : object Get the channel object by supplying the URL of the channel page
getPlaylistById ( $id, $part = ['id', 'snippet', 'status'] ) : StdClass
getPlaylistItemsByPlaylistId ( string $playlistId, string $pageToken = '', integer $maxResults = 50, array $part = ['id', 'snippet', 'contentDetails', 'status'] ) : array
getPlaylistsByChannelId ( string $channelId, array $optionalParams = [], array $part = ['id', 'snippet', 'status'] ) : array
getPopularVideos ( $regionCode, integer $maxResults = 10, $part = ['id', 'snippet', 'contentDetails', 'player', 'statistics', 'status'] ) : array Gets popular videos for a specific region (ISO 3166-1 alpha-2)
getRelatedVideos ( string $videoId, $maxResults = 5, $part = ['id', 'snippet'] ) : array
getVideoInfo ( $vId, $part = ['id', 'snippet', 'contentDetails', 'player', 'statistics', 'status'] ) : StdClass
paginateResults ( $params, $token = null ) : array Generic Search Paginator, use any parameters specified in the API reference and pass through nextPageToken as $token if set.
parseVIdFromURL ( string $youtube_url ) : string Parse a youtube URL to get the youtube Vid.
search ( $q, integer $maxResults = 10, $part = ['id', 'snippet'] ) : array Simple search interface, this search all stuffs and order by relevance
searchAdvanced ( $params, $pageInfo = false ) : array Generic Search interface, use any parameters specified in the API reference
searchChannelVideos ( string $q, string $channelId, integer $maxResults = 10, string $order = null, $part = ['id', 'snippet'], $pageInfo = false ) : object Search only videos in the channel
searchVideos ( string $q, integer $maxResults = 10, string $order = null, $part = ['id'] ) : StdClass Search only videos

Method Details

__construct() public method

Constructor $youtube = new Youtube(array('key' => 'KEY HERE'))
public __construct ( $key )

_parse_url_path() public static method

Parse the input url string and return just the path part
public static _parse_url_path ( string $url ) : string
$url string the URL
return string the path string

_parse_url_query() public static method

Parse the input url string and return an array of query params
public static _parse_url_query ( string $url ) : array
$url string the URL
return array array of query params

api_get() public method

Using CURL to issue a GET request
public api_get ( $url, $params ) : mixed
$url
$params
return mixed

decodeList() public method

Decode the response from youtube, extract the list of resource objects
public decodeList ( string &$apiData ) : array
$apiData string response string from youtube
return array Array of StdClass objects

decodeMultiple() public method

Decode the response from youtube, extract the multiple resource object.
public decodeMultiple ( string &$apiData ) : StdClass
$apiData string the api response from youtube
return StdClass an Youtube resource object

decodeSingle() public method

(Don't use this to decode the response containing list of objects)
public decodeSingle ( string &$apiData ) : StdClass
$apiData string the api response from youtube
return StdClass an Youtube resource object

getActivitiesByChannelId() public method

public getActivitiesByChannelId ( $channelId, $part = ['id', 'snippet', 'contentDetails'], $maxResults = 5 ) : array
$channelId
return array

getApi() public method

public getApi ( $name ) : mixed
$name
return mixed

getChannelById() public method

public getChannelById ( $id, $optionalParams = false, $part = ['id', 'snippet', 'contentDetails', 'statistics', 'invideoPromotion'] ) : StdClass
$id
return StdClass

getChannelByName() public method

public getChannelByName ( $username, $optionalParams = false, $part = ['id', 'snippet', 'contentDetails', 'statistics', 'invideoPromotion'] ) : StdClass
$username
return StdClass

getChannelFromURL() public method

Get the channel object by supplying the URL of the channel page
public getChannelFromURL ( string $youtube_url ) : object
$youtube_url string
return object Channel object

getPlaylistById() public method

public getPlaylistById ( $id, $part = ['id', 'snippet', 'status'] ) : StdClass
$id
return StdClass

getPlaylistItemsByPlaylistId() public method

public getPlaylistItemsByPlaylistId ( string $playlistId, string $pageToken = '', integer $maxResults = 50, array $part = ['id', 'snippet', 'contentDetails', 'status'] ) : array
$playlistId string
$pageToken string
$maxResults integer
$part array
return array

getPlaylistsByChannelId() public method

public getPlaylistsByChannelId ( string $channelId, array $optionalParams = [], array $part = ['id', 'snippet', 'status'] ) : array
$channelId string
$optionalParams array
$part array
return array

getPopularVideos() public method

Gets popular videos for a specific region (ISO 3166-1 alpha-2)
public getPopularVideos ( $regionCode, integer $maxResults = 10, $part = ['id', 'snippet', 'contentDetails', 'player', 'statistics', 'status'] ) : array
$regionCode
$maxResults integer
return array

getRelatedVideos() public method

public getRelatedVideos ( string $videoId, $maxResults = 5, $part = ['id', 'snippet'] ) : array
$videoId string
return array

getVideoInfo() public method

public getVideoInfo ( $vId, $part = ['id', 'snippet', 'contentDetails', 'player', 'statistics', 'status'] ) : StdClass
return StdClass

paginateResults() public method

Generic Search Paginator, use any parameters specified in the API reference and pass through nextPageToken as $token if set.
public paginateResults ( $params, $token = null ) : array
$params
$token
return array

parseVIdFromURL() public static method

Support both full URL (www.youtube.com) and short URL (youtu.be)
public static parseVIdFromURL ( string $youtube_url ) : string
$youtube_url string
return string Video Id

searchAdvanced() public method

Generic Search interface, use any parameters specified in the API reference
public searchAdvanced ( $params, $pageInfo = false ) : array
$params
$pageInfo
return array

searchChannelVideos() public method

Search only videos in the channel
public searchChannelVideos ( string $q, string $channelId, integer $maxResults = 10, string $order = null, $part = ['id', 'snippet'], $pageInfo = false ) : object
$q string
$channelId string
$maxResults integer
$order string
$pageInfo
return object

searchVideos() public method

Search only videos
public searchVideos ( string $q, integer $maxResults = 10, string $order = null, $part = ['id'] ) : StdClass
$q string Query
$maxResults integer number of results to return
$order string Order by
return StdClass API results

Property Details

$APIs public property

public array $APIs
return array

$page_info public property

public array $page_info
return array

$youtube_key protected property

protected string $youtube_key
return string