проблема доступа к переменной в объекте - PullRequest
1 голос
/ 02 сентября 2010

Редактировать: это часть основной функции для вызова функции захвата:

  $video['type']          = $videoProvider;
  $video['id']          = $videoIds;
  $video['title']          = $this->grab_title_from_curl($data);

У меня есть эта маленькая функция для анализа заголовка из HTML через curl, он работает.

  private function grab_title_from_curl ($pull){
    preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull,$data) ;
    return $data;
  }

и показывает мне это:

Array
(
    [type] => yahoo
    [id] => 613478/2923165
    [title] => Array
        (
            [0] =>  EXELENTE TIRO DE ARCO!!
        )
)

Мне нужно, чтобы [title] напрямую получал значение [0] в массиве.например: [title] => EXELENTE TIRO DE ARCO !!

второе редактирование:

по какой-то причине код ломается, когда я использую код JoostK: pastie.org

извините за мой плохой английский!

решено: вместо preg_match ("/?) \" / ", $ Pull, $ data); preg_match ('/?) \" /', $ Pull, $ data);

Ответы [ 2 ]

1 голос
/ 02 сентября 2010

На основании ваших правок это должно работать:

private function grab_title_from_curl ($pull){
    $data = array();
    preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull, &$data);
    return $data[0];
}
0 голосов
/ 02 сентября 2010

Используйте временную переменную для хранения совпадений:

private function grab_title_from_curl ($pull){
    $matches = array();
    preg_match("/<meta name=\"title\" content=\"(.*?)\"/", $pull, $matches) ;
    $data['title'] = $matches[0];
    return $data;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...