所有文件都应该有php扩展名或者php输出一个字符串吗?

时间:2017-08-13 20:13:36

标签: php html css

我想在每个页面上显示ip的服务器状态,但要检查状态我需要一个php脚本。这个脚本是我在互联网上找到的

<?php
    $server='google.be:80';
    $split=explode(':',$server);
    $ip=$split[0];
    $port=(empty($split[1]))?'80':$split[1];
    $server=$ip.':'.$port;
$fp = @fsockopen($ip, $port, $errno, $errstr, 1);
if($fp){
    echo $server.' is online';
    fclose($fp);
}
else{
    echo $server.' is offline';
}
?>

我想要将回声格式化为我的css格式化,所以我可以用

替换回声
?>
<p>Server is offline<p>
<?php

?>
<p>Server is online<p>
<?php

但是我必须让每个html文件都成为一个php文件,你会推荐它还是有不同的方法来处理它?<​​/ p>

3 个答案:

答案 0 :(得分:2)

在我的服务器上,所有文件都是PHP,因为我需要包含PHP函数,例如echo用户名等,我相信将.html转换为.php并没有什么坏处。另一件事是,以下页面提供了有关使用CSS设置PHP回声样式的信息。

How to style a PHP echo text?

我认为拥有所有php文件会更好。

答案 1 :(得分:2)

您可以使用jQuery AJAX将PHP数据发送到HTML页面。您可以json_encode响应并将该数据作为JSON对象接收并从中获取数据。

编辑:在生产环境和效率方面,最好将HTML文件转换为PHP文件,这样做是值得的。然而,下面的这个小片段可以用于其他功能,如果修改或构建,所以这是一个学习经验,你可以看到基本的jQuery AJAX调用。

以下代码是调用PHP文件并获取结果的工作示例。查看使用jQuery和AJAX的基本示例将帮助您获得如何使用它的坚实基础。

<强> check_server.php

<?php
    $server='google.be:80';
    $split=explode(':',$server);
    $ip=$split[0];
    $port=(empty($split[1]))?'80':$split[1];
    $server=$ip.':'.$port;
$fp = fsockopen($ip, $port, $errno, $errstr, 1);

   $result = new stdClass();
if($fp){
    $result->result = 'success';
    fclose($fp);
}
else{
   $result->result = 'offline';
}

echo json_encode($result);
?>

<强>的index.html

<html>
    <head>
        <title>Website</title>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">

        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
        <script>
            $.ajax({
        url : "check_server.php",
        type : "POST",
        dataType: "json",
        success : function(results){
                      if (results.result === 'success')
                      {
                          $('#status').append('Server online.');
                      }
                      else
                      {
                         $('#status').append('Server offline.');
                      }
                  },
         error : function()
              {
                  $('#status').append('An error has occurred.');
              }
    });
            </script>
    </head>
    <body>
        <div id="status"></div>
    </body>
</html>

答案 2 :(得分:0)

无法在HTML文件中实现PHP。 在.php文件中创建HTML是解决此问题的最佳解决方案。

您可以在PHP文件中使用HTML,如果您将其命名为PHP文件,则不必在文件中使用PHP。