Как мне вызвать эту функцию в контроллере CodeIgniter? - PullRequest
2 голосов
/ 29 мая 2010

У меня есть этот код, но я не уверен, что заставлю его работать:

/**
 * Function: youtube data grabber
 *
 * @description :
 * @param  $ : video code, url type (embed/url)
 * @return : data array
 * @author : Mamun.
 * @last -modified-by: Mamun.
 */

if (! function_exists('youtube_data_grabber'))
        {

                function youtube_data_grabber($video_code, $link_type = "embed")
                {
                        if ($video_code != '')
                        {
                            if ($link_type == "embed")
                            {
                                $splited_data = explode("=",$video_code);
                                $video_unique_code = substr(strrchr($splited_data[4],"/"),1,-strlen(strrchr($splited_data[4],"&")));

                            }
                            else if ($link_type == "url")
                            {
                                $splited_data = explode("=",$video_code);
                                $video_unique_code = substr($splited_data[1],0,-strlen(strrchr($splited_data[1],"&")));
                            }
                            else
                            {
                                return;
                            }

                                // set feed URL
                                $feedURL = 'http://gdata.youtube.com/feeds/api/videos/'.$video_unique_code;

                                // read feed into SimpleXML object
                                $sxml = simplexml_load_file($feedURL);

                            return $sxml;
                        }

                }
        } // End Youtube Function

Я не уверен, как активировать это то, что я пытаюсь сказать. Я поместил его в контроллер, и он находится в функции для одной из моих страниц. У меня нет никаких синтаксических ошибок. Я просто не знаю, как его разбудить и заставить его работать. Я думал, что могу просто поставить youtube_data_grabber('http://www.youtube.com/watch?v=LAcrFym10ZI', 'url');, но это не сработало.

Я получил код от этого блога , и у меня работает функция Zend. Я проверил это раньше и не было ошибок. У меня просто проблемы с этой частью YouTube.

Есть идеи?

Ответы [ 2 ]

4 голосов
/ 29 мая 2010

Этот код должен идти в помощнике или плагине, а не в контроллере. Первая часть кода на этой странице должна быть в вашем контроллере. Тот, который вы вставили, является просто альтернативной версией.

3 голосов
/ 01 июня 2010

Сохраните ваш код в application/helpers/youtube_helper.php, затем в вашем контроллере продолжайте и позвоните $this->load->helper('youtube').

Только тогда ваша функция youtube_data_grabber() будет доступна.

...