output_add_rewrite_var()
(PHP 4 >= 4.3.0, PHP 5, PHP 7)
添加URL重写器的值(Add URL rewriter values)
说明
output_add_rewrite_var(string $name,string $value): bool
此函数给URL重写机制添加名/值对。这种名值对将被添加到URL(以GET参数的形式)和表单(以input隐藏域的形式),当透明URL重写用session.use_trans_sid开启时同样可以添加到session ID。要注意,绝对URL(http://example.com/..)不能被重写。
此函数的行为由url_rewriter.tagsphp.ini参数控制。
Note:如果还没有活跃的输出缓冲区,调用此函数将隐式地开启它。
参数
- $name
变量名。
- $value
变量值。
返回值
成功时返回TRUE
,或者在失败时返回FALSE
。
范例
Example #1output_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()
列出所有使用中的输出处理程序。
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', '&'); ?>
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>
Just to clarify... session.use_trans_sid does NOT need to be enabled in order for output_add_rewrite_var() to work.