Php 在字符串中搜索一个单词,并用不同的链接替换该单词

Php 在字符串中搜索一个单词,并用不同的链接替换该单词,php,Php,使用PHP,如何用不同的链接替换字符串中的单词 我想按顺序用不同的链接替换word web development 这家网络开发公司很棒。一个好的web开发开始了 与 像这样 这家公司很棒。良好的开端 与 我试过使用str\u ireplace,但两个链接都指向同一个站点 这是我的密码 <?php $text = 'This web development company is great. A good web development starts with...'; $repla

使用PHP,如何用不同的链接替换字符串中的单词

我想按顺序用不同的链接替换word web development

这家网络开发公司很棒。一个好的web开发开始了 与

像这样

这家公司很棒。良好的开端 与

我试过使用
str\u ireplace
,但两个链接都指向同一个站点

这是我的密码

<?php

$text = 'This web development company is great. A good web development starts with...';


$replaced = str_ireplace(array('web development', 'web development'),array('<a href="http://google.com">web development</a>', '<a href="http://yahoo.com">web development</a>'), $text);

echo $replaced;
如中所示,您可以执行类似操作(使用preg\u replace):

它将显示:“谷歌和雅虎”

(我希望我了解您的需要)

尝试使用regex,如:

<?php
$text = 'This web development company is great. A good web development starts with...';

$regex = "/[^>]web development[^<]/i";
$replace = array(' <a href="http://google.com">web development</a> ', 
' <a href="http://yahoo.com">web development</a> ');
$count = 1;
$replaced = preg_replace(array($regex,$regex), $replace, $text, $count);

echo $replaced;

我想你可以用
preg\u replace
来做

搜索与模式匹配的主题,并将其替换为 替换

您可以对要替换的单词的时间设置限制

限制:每个主题中每个模式的最大可能替换 一串默认值为-1(无限制)

因此,我认为你可以做一个功能,首先,计算“Web开发”中出现的文本,然后执行:

$text = preg_replace("web development", "<a href='http://www.exemple.com'>web development</a>", $text, 1);

请参阅PHP手册中的。

我认为您可以使用
preg\u replace()
函数,如下所示:

$pattern = '/(web development)(.*)(web development)/';
$replace = '<a href="http://google.com">web development</a>$2<a href="http://yahoo.com">web development</a>';
$result = preg_replace($pattern, $replace, $text);
echo $result;
$pattern='/(web开发)(.*)(web开发)/;
$replace='$2';
$result=preg_replace($pattern,$replace,$text);
回声$结果;

希望有帮助

php应该如何知道用哪个链接替换“web开发”?按顺序?您希望用于替换的链接是否总是以相同的顺序出现?您是否可以控制原始内容(即将web开发更改为更可用的占位符)?数组中的第一个替换链接应替换第一个单词。可能的重复项
preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
$pattern = '/(web development)(.*)(web development)/';
$replace = '<a href="http://google.com">web development</a>$2<a href="http://yahoo.com">web development</a>';
$result = preg_replace($pattern, $replace, $text);
echo $result;