gpt4 book ai didi

PHP filesize() 适用于除一个文件外的所有文件,给出统计失败错误

转载 作者:可可西里 更新时间:2023-11-01 13:27:15 24 4
gpt4 key购买 nike

我正在编写一个 PHP 页面,它通过抓取现有的 HTML 页面来生成播客提要。一切正常,但我的一个 mp3 文件出现“filesize(): stat failed”错误。据我所知,该文件没有损坏,并且可以正常播放。我也将文件重新上传到服务器。它位于所有文件大小的中间范围内,所以我认为文件不会太大。因为每个其他文件都会返回一个文件大小,所以我假设问题出在 mp3 文件上,而不是我的服务器配置上。还有什么我应该检查的吗?

这是我的代码的相关部分:

$i = 1; //skipping header row on table
do {
$tr = $table->find('tr', $i);

$date = $tr->find('div', 0)->plaintext;
$datetime = new DateTime($date);
$speaker = $tr->find('div', 1)->plaintext;
$title = $tr->find('div', 2)->plaintext;
$url = $tr->find('div', 3)->find('a', 0)->href;
$fullurl = "http://domain.org/resources/".$url;
$filesize = filesize($url); //<---works on every file except one

echo "<item><title>".$title."</title>\n";
echo "<description>".$title." - ".$datetime->format('D, M jS, Y')." - ".$speaker."</description>\n";
echo "<itunes:author>".$speaker."</itunes:author>\n";
echo "<enclosure url=\"".$fullurl."\" length=\"".$filesize."\" type=\"audio/mpeg\"/>\n";
echo "<guid isPermaLink=\"true\">".$fullurl."</guid>\n";
echo "<pubDate>".$datetime->format('r')."</pubDate>\n";
echo "<itunes:explicit>clean</itunes:explicit></item>\n\n";

$i++;
}while ($table->find('tr', $i) != NULL);

按要求:(有人指出编辑吗?这是我在这里的第一个问题..)

文件名为“12-20-09_AM_Podcast.mp3”,遵循所有其他文件的命名约定,所有文件的权限均为644。完整错误代码为

<b>Warning</b>:  filesize() [<a href='function.filesize'>function.filesize</a>]: stat failed for audio/12-20-09_AM_Podcast.mp3 in <b>/homepages/1/d106955786/htdocs/victory/resources/podcast1.php</b> on line <b>45</b><br />

最佳答案

出于某种原因,domain.org 上的网络服务器未返回 Content-Length header 字段,这导致 filesize()失败。

如果文件存储在本地,filesize()文件的本地副本。否则,您无法解决此问题,因为它是 domain.org 的网络服务器上的问题。您可以通过在本地下载文件并检查 filesize() 来解决此问题。然后,但这会大大降低您的页面速度。

如果文件存储在本地,请再次检查您的文件名或 anchor 。您可能有一个(或两个)拼写错误,Apache mod_speling 正在为您修复它。

关于PHP filesize() 适用于除一个文件外的所有文件,给出统计失败错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2203679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com