我有一个问题。我想在动态字符串中获得价值,它是如此复杂。这是字符串
<['pritesh:name:nilesh:replace']>
这是动态字符串,我想获取名称并替换此字符串中的变量值。
$exploded = explode(':', $string);
$exploded[1] = $replacement;
$string = implode(':', $exploded);
我不太确定你的字符串的格式,但这里有一些东西可以帮助你。
您可以使用explode
将带有分隔符的字符串转换为数组。然后您可以更改一个值并将其转换回以“:”分隔的形式。您可以使用 来执行此操作join
,它是 的别名implode
:
<?php
// initialize variable and print it
$s = "pritesh:name:nilesh:replace";
print("{$s}\n");
$s = explode(":", $s); // convert to array
$s[1] = "anotherName"; // change value
// convert back to foo:bar form and print
$s = join($s, ":");
print("{$s}\n");
?>
将其放入文件example.php
并在命令行上运行:
$ php -q example.php
pritesh:name:nilesh:replace
pritesh:anotherName:nilesh:replace
正如有人提到的,如果您需要处理更高级的格式,您应该学习如何在 PHP 中使用正则表达式。
希望有帮助!
假设字符串存储在名为 的变量中$string
,则:
$parts = explode(':', $string);
// this will mean that
// $parts[0] contains pritesh, $parts[1] = name, $parts[2] = nilesh and $parts[3] = replace
// therefore
$name = $parts[0];
$replace = $parts[2];