求助: PHP 错误,请高手帮我改写下面的 PHP 代码

51 天前
 hwhtj

`<?php

$nowtime=time();

$pastsec = $nowtime - $_GET["t"];

if($pastsec<600) { exit; //10 分钟更新一次,时间可以自己调整 } ob_start(); //打开缓冲区 include("index.php"); $content = ob_get_contents(); //得到缓冲区的内容 $content .= "\n<script language=javascript src='/index/thumb.png' data-original="html.php?t=".$nowtime.""></script>"; //加上调用更新程序的代码

file_put_contents("index.html",$content); if (!function_exists("file_put_contents")) { function file_put_contents($fn,$fs) { $fp=fopen($fn,"w+"); fputs($fp,$fs); fclose($fp);
} } ?>`

以上代码用于生成 typecho 首页 index.html ,运行时提示错误: Warning: Undefined array key "t" in /www/onlineps.top/learn/html.php on line 3 求助高手帮我改写以上代码。

1420 次点击
所在节点    PHP
14 条回复
ejin
51 天前
前面改成这样

<?php
if(isset($_GET["t"]) ===false){
die();
}
foam
50 天前
为什么不用 AI ?
hwhtj
50 天前
@ejin 这样改了之后,这个 php 就不运行了,die 了,无法生成 index.html 了
Sunzehui
50 天前
关掉 php 的 warning 报错就行了
vishun
50 天前
@hwhtj 那你就传递 t 这个参数啊,你不传递不就 die 了嘛?
hwhtj
50 天前
v2048
50 天前
@hwhtj 是的。$_GET["t"]的意思就是获取链接里 key 为 t 的数据。错误提示意思是:$_GET 这个数组里没有 t 这个 key
v2048
50 天前
其实这个事,你完全可以找个 ai 工具,把上面这一点点代码放进去提问。免费可用的非常多,例如豆包、元宝、kimi 、deepseek 等等。对于这个事的处理,预计应该都能胜任。
v2048
50 天前
顺便又想多说点:新手面对很多基本、简单的问题时,向人提问不如向 ai 提问。现在免费好用的 ai 工具很多,自己用用判断效果,而不是仅看别人评论,情况不一定一样。
1 、它们会认真、及时、连续回答;
2 、更重要的是:回复(非“回答”)不会让新手感到尴尬/不适。
yuanxing008
50 天前
看逻辑 t 参数应该是页面生成的时间,要么是后端传过去给前端,前端带着请求到后端,要么就是前端从静态页存储站可以取到文件更新时间然后带着请求到后端。
ejin
50 天前
重新看了一下,好家伙,折叠代码后代码跑到注释后面了,代码格式化工具看了都摇头说救不了一点。
格式化好后一看,好家伙,要改的地方还蛮多,类似伪代码,意思表达了,但代码错漏百出,差不多属于是要重新实现了。

要不你还是让 AI 上吧。
hwhtj
50 天前
ejin
50 天前
我想了想,这种程序也不能说没有意义,所以帮你修复了,在我的 Wordpress 上测试通过,初次打开 html.php ,后续就是自动的了,你自己试试看。

嗯,太长看了烦,代码就一行。

<?php $nowtime=time();if(isset($_GET["t"]) && is_numeric($_GET["t"]) && $nowtime - $_GET["t"]<600){exit;} ob_start();include("index.php");$content = ob_get_contents(). "\n<script type='javascript' src='html.php?".$nowtime."' ></script>";ob_end_clean();file_put_contents("index.html", $content);?>
hwhtj
50 天前
@ejin 谢谢你的帮助

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1160327

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX