downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

output_reset_rewrite_vars> <ob_start
[edit] Last updated: Fri, 17 May 2013

view this page in

output_add_rewrite_var

(PHP 4 >= 4.3.0, PHP 5)

output_add_rewrite_varAladir valores al mecanismo de reescritura de URLs

Descripción

bool output_add_rewrite_var ( string $name , string $value )

Esta función añade otro par nombre/valor al mecanismo de reescritura de URLs. El nombre y el valor se agregarán a los URLs (como parámetros de GET) y a los formularios (como camos intput ocultos) de la misma forma que el ID de sesión cuando la reescritura de URLs de forma transparente está habilitada con session.use_trans_sid. Observe que los URLs absolutos (http://example.com/..) no son reescritos.

El comportamiento de esta función está controlado por el parámetro url_rewriter.tags de php.ini.

Nota: Al llamar a esta función se iniciará el almacenamiento implícito en búfer de salida si no estaba ya activo.

Parámetros

name

El nombre de la variable.

value

El valor de la variable.

Valores devueltos

Devuelve TRUE en caso de éxito o FALSE en caso de error.

Ejemplos

Ejemplo #1 Ejemplo de output_add_rewrite_var()

<?php
output_add_rewrite_var
('var''valor');

// algunos enlaces
echo '<a href="fichero.php">enlace</a>
<a href="http://example.com">enlace2</a>'
;

// un formulario
echo '<form action="script.php" method="post">
<input type="text" name="var2" />
</form>'
;

print_r(ob_list_handlers());
?>

El resultado del ejemplo sería:

<a href="fichero.php?var=valor">enlace</a>
<a href="http://example.com">enlace2</a>

<form action="script.php" method="post">
<input type="hidden" name="var" value="valor" />
<input type="text" name="var2" />
</form>

Array
(
    [0] => URL-Rewriter
)

Ver también



output_reset_rewrite_vars> <ob_start
[edit] Last updated: Fri, 17 May 2013
 
add a note add a note User Contributed Notes output_add_rewrite_var - [4 notes]
up
1
Bruce
5 years ago
Just to clarify...

session.use_trans_sid does NOT need to be enabled in order for output_add_rewrite_var() to work.
up
0
Anonymous
4 years ago
For a completely valid XHTML document you have to set the arg_separator, use this before you use output-add-rewrite-var:

<?php
ini_set
('arg_separator.input', '&');
ini_set('arg_separator.output', '&');
?>
up
0
neo at nowhere dot com
5 years ago
As a small side note, when there are values in the output_add_rewrite_var() function, these values are applied to all dynamic addresses (with in the limits posted above), including addresses that already have that variable set.

Example:

<?
output_add_rewrite_var("page", "admin");
echo '<a href="?a=signup&page=home">Signup</a>';
?>

The above will output the following:

<a href="?a=signup&page=home&page=admin">Signup</a>

However, this is easy to get around, using output buffering inside of output buffering. Because in my case, I couldn't remove the rewrite variable, as I have no idea if the next address would need it or not.
up
0
Niko
5 years ago
This function also adds a parameter to <input type="image"> fields!

Example:
This code:

<?
output_add_rewrite_var ('var','value');
echo '<form action="" method="post">
        <input type="image" src="image.jpg" alt="go">
        </form>';
?>

will output something like this:

<form action="" method="post">
        <input type="hidden" name="var" value="value">
        <input type="image" src="image.jpg?var=value" alt="go">
        </form>

 
show source | credits | sitemap | contact | advertising | mirror sites