Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/264.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Java代码转换为PHP-URL连接和读取响应_Java_Php_Code Conversion - Fatal编程技术网

将Java代码转换为PHP-URL连接和读取响应

将Java代码转换为PHP-URL连接和读取响应,java,php,code-conversion,Java,Php,Code Conversion,我编写了以下Java程序来连接google.com,得到它的HTML源代码,在屏幕上打印整个源代码,然后计算代码中的换行次数()。它工作得很好 String QUERY = "http://www.google.com"; URL url = new URL(QUERY); URLConnection connection = url.openConnection(); connection.setDoInput(true); InputStream inStream = connect

我编写了以下Java程序来连接google.com,得到它的HTML源代码,在屏幕上打印整个源代码,然后计算代码中的换行次数(

)。它工作得很好

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编写一个类似的代码。 我知道可以使用fopen调用URL,并使用fread将其读入字符串类型变量


我想知道如何打印它(可能是echo?)。但更重要的是,我如何在源代码中搜索所需的字符串,不仅要计算出现的次数,还要在指定搜索字符串的位置后检索字符串/字符集。

这是一个有点奇怪的请求,您似乎在打印每个字符串(而不是最后)后打印数字。此外,您似乎只计算了一次与
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;
    }

}

谢谢,这确实让我开始了……虽然不算什么。当我运行这段代码时,我的浏览器会打开谷歌,而不是检索其HTML并回显“计数”。当然不是。它只是逐行打印www.Google.com的内容,如果你在浏览器中调用它(java版本似乎是在cli上调用的,所以我认为您也应该在cli上使用php版本)它解释html。如果您想在浏览器中看到纯html代码(无论出于何种原因),请围绕$line变量包装一个“htmlspecialchars”函数调用。