X时间后显示数组中的新值

时间:2019-07-18 15:08:39

标签: php

这是PHP7.1 + Apache2中的加载页面问题。我有一组数组中的消息。当前,在加载页面时,会拾取并显示任何随机消息。

以下是用于随机数组消息的PHP代码:

$randomMessage = array (
    'Message 1',
    'Message 2',
    'Message 3',
    'Message 4',
    'Message 5',
    'Message 6',
    'Message 7',
    'Message 8',
    'Message 9'
);
$data ['text_page_loading'] = $randomMessage[rand(0, count($randomMessage) - 1)];

问题是页面在加载较慢的连接上需要花费一些时间。

是否有可能每隔X秒显示一次来自阵列的新消息。

1 个答案:

答案 0 :(得分:0)

在提供消息的位置制作php文件message.php。然后在该文件中

message.php

<?php
$randomMessage = array (
    'Message 1',
    'Message 2',
    'Message 3',
    'Message 4',
    'Message 5',
    'Message 6',
    'Message 7',
    'Message 8',
    'Message 9'
);
$data ['text_page_loading'] = $randomMessage[rand(0, count($randomMessage) - 1)]; 
echo json_encode($data);

在html中您要在何处打印消息添加id = "msg"

<div id="msg"></div>

在脚本中首先导入jquery库,然后

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
$(document).ready(function(){
    window.setTimeout(function () {
      $.ajax({
        url: 'message.php',
        datatype: 'json',
        success: function (data) {
         var response = JSON.parse(data);
         $('#msg').html(response.text_page_loading);

        },
        cache: false
      });
    }, 5000);  // after five second it will hit the server process response
});
</script>