Преобразование кода Java в PHP - URL-соединения и чтение ответа - PullRequest
0 голосов
/ 25 августа 2011

Я написал следующую Java-программу для подключения к google.com, получения взамен ее исходного кода HTML, распечатки всего исходного кода на экране и подсчета числа «нет». разрывов строк (<br>) в коде. Работает нормально.

String QUERY = "http://www.google.com";

URL url = new URL(QUERY);

URLConnection connection = url.openConnection();

connection.setDoInput(true);

InputStream inStream = connection.getInputStream();

BufferedReader input = new BufferedReader(new InputStreamReader(inStream));

String line = "";

int count = 0;

while ((line = input.readLine()) != null)

   {

   System.out.println(line);

   if(line.contains("br"))

      {

      count++;

      System.out.println(count);

      }

   }

Проблема в том, что я хочу написать похожий код на PHP. Я знаю, что URL можно вызывать с помощью fopen и читать в переменную типа String с помощью fread.

Я хочу знать, как я могу напечатать это (может быть, эхо?). Но что более важно, как я могу найти нужную строку в исходном коде, а не просто считать нет. случаев, но также извлекает строку / набор символов после расположения указанной строки поиска.

1 Ответ

2 голосов
/ 25 августа 2011

Это немного странный запрос, и вы, кажется, печатаете числа после того, как печатаете каждый столбец (а не в конце). Также вы, кажется, считаете каждую строку, которая противоречит br только один раз, но это должно помочь вам начать работу с php:

<?php
$count = 0;
foreach(file("http://www.google.com") as $line) {
    echo $line, PHP_EOL;
    if(strpos('br', $line)) { 
        ++$count;
    echo $count, PHP_EOL;
    }

}
...