用Java读取PHP回显输出时出错


Error when reading PHP echo output with Java

我的应用程序出现以下错误

. lang。NullPointerException:尝试在空对象引用上调用虚拟方法'java.lang.String java.lang.Object.toString()'

启动HTTP连接的JAVA代码如下所示:
boolean l = true;
String[] ergebnisArray = new String[100];
for(int i = 0; i < ergebnisArray.length; i++) {
    ergebnisArray[i] = "";
}
String count = "0";
if(l) {
    try {
        String login_url = "http://192.168.178.82:8080/webapp/test.php";
        URL url = new URL(login_url);
        HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
        httpURLConnection.setRequestMethod("POST");
        httpURLConnection.setDoOutput(true);
        httpURLConnection.setDoInput(true);
        OutputStream outputStream = httpURLConnection.getOutputStream();
        BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream, "UTF-8"));
        String data = URLEncoder.encode("count", "UTF-8") + "=" + URLEncoder.encode(count, "UTF-8");
        bufferedWriter.write(data);
        bufferedWriter.flush();
        bufferedWriter.close();
        outputStream.close();
        InputStream inputStream = httpURLConnection.getInputStream();
        BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "iso-8859-1"));
        String response = "";
        String line = "";
        while ((line = bufferedReader.readLine()) != null) {
            response += line;
        }
        bufferedReader.close();
        inputStream.close();
        httpURLConnection.disconnect();
        if (response != "") {
            int c = Integer.parseInt(count);
            ergebnisArray[c] = response;
            c++;
            count = Integer.toString(c);
        } else {
            l = false;
        }
    } catch (MalformedURLException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
return ergebnisArray;
最后是PHP代码:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "webdb";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
$zaehler = $_POST["count"];
$sql = "SELECT * FROM stundenplan";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc() ) {
        for ($i = 0; $i <= (int)$zaehler; $i++) {
        $output =  "".$row["Lehrer"]." ".$row["Klasse"]." ".$row["Stunde"];
        }
    }
} else {
    echo "";
}
echo $output;
$conn->close();
?>

Thanks in advance

你需要在函数外声明$output,然后把数据放在函数内,或者你可以在for循环中打印它。我认为这里存在变量作用域的问题比如全局或局部