0

I would like to find a match in html source code for the following data:

<meta property="al:android:url" content="fb://profile/123123121123" />

using preg_match_all(); I am not sure how to write the code.

after getting the answer to this : preg_match_all('/]*)\"/', $html, $matches);

it's not working, it's returning an empty set.

this is my code:

 $ret = array();

    $matches = array();
    // die();
    $url = 'https://www.facebook.com/' . $fanpage_name;
    // die($url);
    $context = stream_context_create(array('http' => array('header' => 'User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0')));
    for($a = 0; $a < $no_of_retries; $a++){
        $like_html = file_get_contents($url, false, $context);

               preg_match_all('/<meta property=\"al:android:url\" content=\"([^">]*)\"/', $like_html, $matches);


        if(empty($matches[1])){
            // failed to fetch any fans - convert returning array, cause it might be not empty
            echo "test    ";
            return array_keys($ret);
        }else{
            // merge profiles as array keys so they will stay unique
            $ret = array_merge($ret, array_flip($matches[1]));
        }
        // don't get banned as flooder
        usleep($pause);
    }
    return array_keys($ret);
user30102967
  • 221
  • 2
  • 13

1 Answers1

1

If you are interested in the attribute "content"

preg_match_all('/<meta property=\"al:android:url\" content=\"([^">]*)\"/', $html, $matches);