Reputation: 13199
I am trying to get the date in which a file was modified or created with PHP. To do this I am using filectime function but it is giving me always the following error:
Warning: filectime(): stat failed for path
where path is the route in which I have stored the file.
The route is something similar to this:
http://MYIP/documents/animals document 1.pdf
http://MYIP/documents/animals document 2.pdf
...
and I have to replace the url to codify the spaces of the file:
$path= str_replace(' ', '%20', $path);
If I do this I can use a link to open this file on my browser but it shows the warning that I have put before if I try to use the same path on filectime
function.
Am I missing something?
Thanks in advance!
Upvotes: 2
Views: 6392
Reputation: 2117
The filectime function expects a string path as a parameter. It is just a wrapper function over the usage of Posix stat system call.
The system call:
int stat(const char *pathname, struct stat *buf);
So, it expects a parameter as though it's on your filesystem. The URL gets encoded to have a neat white-space-less identifier on the server side to execute appropriate scripts.
Don't bother with that "codification"! Just use a standard string path as you'd use on your UNIX shell, relative to the script directory.
In this case, just provide the right path to the PHP function!
filectime("documents/animals document 2.pdf");
Upvotes: 2