bug: with apache 2, apache_lookup_uri("/directory") spits out a warning and fails to return anything. apache_lookup_uri("/directory/") works.
another bug: virtual("something") forces a header flush. I know it's documented, but it would be rather wonderful if it didn't do this. You never ever want to flush headers when you're using virtual() to include a dynamic file such as a PHP or Perl file, which excludes virtual() from being used on most of any website's contents :-(.
apache_lookup_uri
(PHP 4, PHP 5)
apache_lookup_uri — Realiza una petición parcial por la URI especificada y devuelve toda la información sobre ella
Descripción
object apache_lookup_uri
( string $nombre_archivo
)
Esta función realiza una petición parcial por una URI. Tan solo llega a obtener toda la información importante sobre el recurso dado.
This function is only supported when PHP is installed as an Apache module.
Lista de parámetros
- nombre_archivo
-
El nombre de archivo (URI) que está siendo solicitado.
Valores retornados
Un object de información URI relacionada. Las propiedades de este object son:
- status
- the_request
- status_line
- method
- content_type
- handler
- uri
- filename
- path_info
- args
- boundary
- no_cache
- no_local_copy
- allowed
- send_bodyct
- bytes_sent
- byterange
- clength
- unparsed_uri
- mtime
- request_time
Ejemplos
Example #1 Ejemplo de apache_lookup_uri()
<?php
$info = apache_lookup_uri('index.php?var=valor');
print_r($info);
if (file_exists($info->filename)) {
echo '¡el archivo existe!';
}
?>
El resultado del ejemplo seria algo similar a:
stdClass Object ( [status] => 200 [the_request] => GET /dir/archivo.php HTTP/1.1 [method] => GET [mtime] => 0 [clength] => 0 [chunked] => 0 [content_type] => application/x-httpd-php [no_cache] => 0 [no_local_copy] => 1 [unparsed_uri] => /dir/index.php?var=valor [uri] => /dir/index.php [filename] => /home/htdocs/dir/index.php [args] => var=valor [allowed] => 0 [sent_bodyct] => 0 [bytes_sent] => 0 [request_time] => 1074282764 ) ¡el archivo existe!
apache_lookup_uri
tester
12-Feb-2008 05:01
12-Feb-2008 05:01
niels dot kootstra at gmail dot com
08-Feb-2008 04:04
08-Feb-2008 04:04
It's a very usefull function but it doesn't show all outputs. For example I only see:
[status]
[the_request]
[method]
[mtime]
[clength]
[chunked]
[content_type]
[no_cache]
[no_local_copy]
[unparsed_uri]
[uri]
[filename]
[path_info]
[allowed]
[sent_bodyct]
[bytes_sent]
[request_time]
redbeard at mdjohnson dot nospam dot us
17-Apr-2003 05:15
17-Apr-2003 05:15
A useful feature is that if you have content negotiation on (Options MultiViews) Apache will resolve the negotiation for you if possible. Thus www.example.com/blah will resolve to /base/blah.php or /base/blah.html or even /base/blah.en.html as appropriate.
