You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP的basename()函数在HTML链接标签中未输出预期值的问题求助

问题原因

你在HTML链接标签里的PHP代码仅调用了basename()函数,但没有输出它的返回值。PHP不会自动渲染函数的返回结果,必须显式使用echo或print指令,才能将内容输出到HTML中。这就导致链接的href部分只保留了.css后缀,中间的文件名缺失。

解决方法

在basename()函数前添加echo,让PHP输出函数的返回结果:

if (file_exists($_SERVER['DOCUMENT_ROOT'] . '/Photogram/css/' . basename($_SERVER['PHP_SELF'], ".php") . ".css")) { ?>
    <link href="/Photogram/css/<?php echo basename($_SERVER['PHP_SELF'], ".php") ?>.css" rel="stylesheet">
<?php } ?>
优化建议

为避免重复调用basename()函数(提升性能),可以先将文件名存为变量,再在判断和链接中复用:

$pageName = basename($_SERVER['PHP_SELF'], ".php");
$cssPath = $_SERVER['DOCUMENT_ROOT'] . '/Photogram/css/' . $pageName . ".css";

if (file_exists($cssPath)) { ?>
    <link href="/Photogram/css/<?php echo $pageName ?>.css" rel="stylesheet">
<?php } ?>

内容的提问来源于stack exchange,提问作者Klinton A

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 14:06:00