duanliang1898 2013-12-18 21:39
浏览 23
已采纳

使用带有GET变量的php filesize函数

I am trying to use the filesize php function to automatically write the filesize in a meta tag I am using.

What I am doing normally is for example

<meta name="DC.format" content="<?= filesize($filename); ?> bytes">

Now, if this is used with the following syntax it returns:

php
<meta name="DC.format" content="<?= filesize("index.php"); ?> bytes">

resulting html
<meta name="DC.format" content="6412 bytes">

But if I use the following syntax I get the following error.

php
<meta name="DC.format" content="<?= filesize("index.php?locale=en_US"); ?> bytes">

resulting html
<meta name="DC.format" content="<br /><b>Warning</b>:  filesize():
stat failed for index.php?es=./&amp;en=./en/&amp;locale=en_US in
<b>D:\xampp\htdocs\casasenmeridabaspul.com-v2\header.php</b>
on line <b>87</b><br /> bytes">

What I suppose is happening is that filesize is getting the filesize of the specific file without doing any php processing or such. How can I calculate the resulting file size after all the server side has processed everything?

With a little more detail:

I have header.php, footer.php and index.php where index.php has the previous 2 included. I was thinking perhaps something like curl but I am not really familiar with it so I would leave it to the experts.

Thanks in advance.

  • 写回答

2条回答 默认 最新

  • doushi9856 2013-12-18 21:43
    关注

    It's not a file. It's text output from the execution of the file. The best you can do is strlen() or mb_strlen() without using HTTP functions / classes I think:

    <?= strlen(file_get_contents("http://www.example.com/index.php?locale=en_US")); ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?