2017-09-22 65 views
-1

我想使用标题中提到的功能获得多个结果,到目前为止,我只能使用preg_match获得一个唯一值。我想获得所有结果的数组,然后将它们记录在我的数据库中。如何使用preg_match_all和file_get_contents得到多个结果

这是我当前的代码:

$casturl = "https://www.themoviedb.org/movie/353491-the-dark-tower/cast"; 
$cast = file_get_contents($casturl); 
preg_match_all('|<img class="profile lazyload fade" data-sizes="auto" data-src="(.*?)" data-srcset="|' , $cast , $castimg);  
print_r($castimg); 

当我打印结果我只是给:阵列([0] =>阵列([0] =>

我确信投含有我想要什么。我已经尝试了很多的可能性,我没有什么:(

+0

您* *让你的结果,但它的打印HTML,使其得到弄糟。尝试使用'var_dump($ castimg);'你会看到。 – ishegg

+0

请阅读[在什么情况下我可以添加“紧急”或其他类似的短语到我的问题,以获得更快的答案?](/ meta.stackoverflow.com/q/326569) - 总结是,这不是这是解决志愿者问题的理想方式,可能会对获得答案产生反作用。请不要将这添加到您的问题。 – halfer

回答

0

试试这个。我希望你能抓住所有的图像的URL

$casturl = "https://www.themoviedb.org/movie/353491-the-dark-tower/cast"; 
$cast = file_get_contents($casturl); 
preg_match_all('#<img class="profile lazyload fade" data-sizes="auto" data-src="(.*?)" data-srcset="#' , $cast , $castimg);  
print_r($castimg[1]); 

输出

Array ([0] => https://image.tmdb.org/t/p/w66_and_h66_bestv2/d9NkfCwczP0TjgrjpF94jF67SK8.jpg [1] => https://image.tmdb.org/t/p/w66_and_h66_bestv2/jdRmHrG0TWXGhs4tO6TJNSoL25T.jpg [2] => https://image.tmdb.org/t/p/w66_and_h66_bestv2/gzjmHOSM1vnwnXpU737tdu9YjOu.jpg [3] => https://image.tmdb.org/t/p/w66_and_h66_bestv2/zYiS1KJKEoLstzFA3DV5gwszzSC.jpg [4] => https://image.tmdb.org/t/p/w66_and_h66_bestv2/vDuvdRoliXbjQrptk7GVs4Qj07S.jpg ......) 
-1

如果使用

var_dump($castimg); 

inste ad

print_r($castimg); 

你会看得更清楚。