Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在传递php函数的输出时动态替换选项的值_Php_Arrays_String_Preg Replace_Var - Fatal编程技术网

在传递php函数的输出时动态替换选项的值

在传递php函数的输出时动态替换选项的值,php,arrays,string,preg-replace,var,Php,Arrays,String,Preg Replace,Var,我在PHP变量中存储了一个字符串($options),它包含一系列元素,如下所示: <option class="level-0" value="898">Text 1</option> <option class="level-1" value="33">&nbsp;Text 2</option> <option class="level-2" value="543">&nbsp;&nbsp;Text 3<

我在PHP变量中存储了一个字符串
($options)
,它包含一系列
元素,如下所示:

<option class="level-0" value="898">Text 1</option>
<option class="level-1" value="33">&nbsp;Text 2</option>
<option class="level-2" value="543">&nbsp;&nbsp;Text 3</option>
<option class="level-1" value="547">&nbsp;Text 4</option>
<option class="level-0" value="3328">Text 5</option>
Text 1
文本2
文本3
文本4
文本5
我想用一个函数的结果替换每个
值的内容,该函数使用前一个值生成URL。URL字符串(可变)应成为每个相应
的新值。我想保留剩下的一切

我不确定使用
preg\u replace
是否可以实现这一点,但如果每个选项都是一个带键的数组,但它是一个可变字符串,我知道如何实现这一点。。。你会怎么做?

$lines=explode(PHP\u EOL,$options);
$lines = explode(PHP_EOL, $options);

$new_options = array();

foreach ($lines as $option_line) {
   //do the preg replace for each line (quick and dirty regexp)
   $replaced_string_value = preg_replace('/>(\w+)<\//i', '>replacement<\\', $option_line);

   //add it to the new array   
   $new_options[] = $replaced_string_value; 
}

$options = implode(PHP_EOL, $new_options);
$new_options=array(); foreach($行作为$option\u行){ //是否为每一行更换preg(快速和脏regexp)
$replaced\u string\u value=preg\u replace('/>(\w+)replacement在构建选项列表/生成字符串时,是否不可能执行此操作?不幸的是,没有:)这是wordpress的问题:函数wp\u dropdown\u categories()返回下拉列表(可以回送或放入变量),但我需要使用非常永久的链接来更改这些值-我可以使用get_term_link()来实现这一点,它接受值(它是term ID)并返回一个非常永久的链接。如果wp_dropdown_类别允许自定义walker这样做,我本来可以在生成下拉列表之前完成它,但它似乎不允许。然后html解析器或regex它是。。。