当文本文件为空时隐藏回显输出
Hide echo output, when text file is empty
我有一个 blog/vlog,我也在这里分享我在 Spotify 直播中的收听习惯。
我使用一个名为 Snip 的小片段(在 Github 上可用)获取我的 Spotify 流,为我的数据(如曲目、艺术家、专辑和曲目 ID)创建文本文件
现在我想在我的网页上添加一个 link 到我正在播放的实际曲目,使用变量 $i 作为 trackID
多亏了一些谷歌搜索和 tips/trix 页面,我想出了这段代码:
<?php
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile,filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
?>
这很好用,但是当我关闭 Spotify 或暂停时,文本文件会自行清空,我的信息框会变成空白,而且应该是这样的:)。
乙
ut ......使用我上面的代码,link、图像和文本“<- Listen”仍然可见,我一直在想办法解决这个问题,但我被卡住了。
(link 也没有真正起作用,因为它只指向没有 trackID 的部分)
所以现在我转向你。你能帮我解决这个问题吗?
如果没有,我可能会保持原样。
在写入 link 之前检查文件是否为空,例如:
$file = "Snip_TrackId.txt";
if (0 < filesize($file)) {
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile,filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
}
或者如果文件包含空格 - 检查读取的数据:
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
$data = trim(fread($myfile,filesize("Snip_TrackId.txt")));
if ($data) {
echo "<a href='https://open.spotify.com/track/";
echo $data;
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
}
fclose($myfile);
您可以在阅读前检查文件大小:
<?php
if ((int)filesize("Snip_TrackId.txt") > 0)
{
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile, filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
}
我有一个 blog/vlog,我也在这里分享我在 Spotify 直播中的收听习惯。 我使用一个名为 Snip 的小片段(在 Github 上可用)获取我的 Spotify 流,为我的数据(如曲目、艺术家、专辑和曲目 ID)创建文本文件
现在我想在我的网页上添加一个 link 到我正在播放的实际曲目,使用变量 $i 作为 trackID
多亏了一些谷歌搜索和 tips/trix 页面,我想出了这段代码:
<?php
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile,filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
?>
这很好用,但是当我关闭 Spotify 或暂停时,文本文件会自行清空,我的信息框会变成空白,而且应该是这样的:)。 乙 ut ......使用我上面的代码,link、图像和文本“<- Listen”仍然可见,我一直在想办法解决这个问题,但我被卡住了。 (link 也没有真正起作用,因为它只指向没有 trackID 的部分)
所以现在我转向你。你能帮我解决这个问题吗? 如果没有,我可能会保持原样。
在写入 link 之前检查文件是否为空,例如:
$file = "Snip_TrackId.txt";
if (0 < filesize($file)) {
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile,filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
}
或者如果文件包含空格 - 检查读取的数据:
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
$data = trim(fread($myfile,filesize("Snip_TrackId.txt")));
if ($data) {
echo "<a href='https://open.spotify.com/track/";
echo $data;
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
}
fclose($myfile);
您可以在阅读前检查文件大小:
<?php
if ((int)filesize("Snip_TrackId.txt") > 0)
{
$myfile = fopen("Snip_TrackId.txt", "r") or die("Die!");
echo "<a href='https://open.spotify.com/track/";
echo fread($myfile, filesize("Snip_TrackId.txt"));
echo "'target='_blank'><img width='18px' height='18px' title='Open with Spotify' src='np_spotify.png'><a/> <- Listen";
fclose($myfile);
}