$string = 'http://example.com/category/1/news/2134/'; // '1' is dynamic
如何将
1
更改为我想要的任何号码?
无法调用字符串的一部分,它只是一个类似文本的变量。
可以使用一些真正的正则表达式来完成。
$string = preg_replace('~(?<=category/)[0-9]+(?=/news)~', '56', $string);
这会将数字替换为 56。
此方法使用带有 断言的正则表达式。
$array = explode('/',$string);
$array[4] = '666';
$string = implode('/',$array);
[编辑] @People downvoting,这种方法似乎有什么问题?
没有更多信息,我对您问题的最佳猜测是:
<?php
$string = 'http://site.com/category/' . $yourNumberHere . '/news/2134/';
?>