文字

output_add_rewrite_var

(PHP 4 >= 4.3.0, PHP 5)

output_add_rewrite_var添加URL重写器的值(Add URL rewriter values)

说明

bool output_add_rewrite_var ( string $name , string $value )

此函数给URL重写机制添加名/值对。 这种名值对将被添加到URL(以GET参数的形式)和表单(以input隐藏域的形式),当透明URL重写用 session.use_trans_sid 开启时同样可以添加到session ID。 要注意,绝对URL(http://example.com/..)不能被重写。

此函数的行为由url_rewriter.tags php.ini 参数控制。

Note: 如果还没有活跃的输出缓冲区,调用此函数将隐式地开启它。

参数

name

变量名。

value

变量值。

返回值

成功时返回 TRUE , 或者在失败时返回 FALSE

范例

Example #1 output_add_rewrite_var() example

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

// some links
echo  '<a href="file.php">link</a>
<a href="http://example.com">link2</a>'
;

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

print_r ( ob_list_handlers ());
?>

以上例程会输出:

<a href="file.php?var=value">link</a>
<a href="http://example.com">link2</a><form action="script.php" method="post">
<input type="hidden" name="var" value="value" />
<input type="text" name="var2" />
</form>Array
(
    [0] => URL-Rewriter
)

参见

  • output_reset_rewrite_vars() - 重设URL重写器的值(Reset URL rewriter values)
  • ob_flush() - 冲刷出(送出)输出缓冲区中的内容
  • ob_list_handlers() - 列出所有使用中的输出处理程序。

用户评论:

[#1] Anonymous [2008-10-20 09:16:44]

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''&');
?>

[#2] Niko [2008-02-24 01:58:37]

This function also adds a parameter to <input type="image"> fields!

Example:
This code:

<?php
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>

[#3] Bruce [2007-09-06 07:54:30]

Just to clarify...

session.use_trans_sid does NOT need to be enabled in order for output_add_rewrite_var() to work.

上一篇: 下一篇: