Create arrays within the while

0

I have the following code:

  $urls = file_get_contents('https://www.google.com/#q=teste'); // teste é a palavra que vai pesquisar no google

    preg_match_all('/\b(?:(?:https?|http):\/\/|www\.)[-a-z]*.com.br/i', $urls, $content); // filtra apenas as urls .com.br da pagina

    $i = 10; // inicia do 10

    while ( $i <= 50 ) { // o while vai entrar nas paginas da paginação, 50 quer dizer até a pagina 5 da paginação, pois cada pagina exibe 10 resultados

    $i+= 10;

    $urls2 = file_get_contents('https://www.google.com/#q=teste&start=".$i."'); // start é onde vai iniciar na proxima pagina (paginação dos resultados da pesquisa)

    preg_match_all('/\b(?:(?:https?|http):\/\/|www\.)[-a-z]*.com/i', $urls2, $contentLoop);

    $totalArray = array_merge($content,$contentLoop);


    }

    print_r($totalArray);

Within the while the preg_match_all at each turn creates a different array since the file_get_contents tbm is changed according to pagination (because of $ i in the url).

How do I get inside the $ totalArray variable to have a single array with all arrays captured during the loop and access the $ totalArray variable outside the loop?

Thank you for your help

    
asked by anonymous 26.10.2016 / 21:25

2 answers

0
$urls = file_get_contents('https://www.google.com/#q=teste'); // teste é a palavra que vai pesquisar no google

preg_match_all('/\b(?:(?:https?|http):\/\/|www\.)[-a-z]*.com.br/i', $urls, $content); // filtra apenas as urls .com.br da pagina

$i = 10; // inicia do 10

$totalArray = $content;

while ( $i <= 50 ) { // o while vai entrar nas paginas da paginação, 50 quer dizer até a pagina 5 da paginação, pois cada pagina exibe 10 resultados

$i+= 10;

$urls2 = file_get_contents('https://www.google.com/#q=teste&start=".$i."'); // start é onde vai iniciar na proxima pagina (paginação dos resultados da pesquisa)

preg_match_all('/\b(?:(?:https?|http):\/\/|www\.)[-a-z]*.com/i', $urls2, $contentLoop);

$totalArray = array_merge($totalArray,$contentLoop);


}

print_r($totalArray);
    
26.10.2016 / 21:30
0

A multidimensional array?

It could be just that:

$totalArray[] = $contentLoop;
    
26.10.2016 / 22:13