Home > Backend Development > PHP Tutorial > php如何在字符串中插入随机关键字 求实例函数

php如何在字符串中插入随机关键字 求实例函数

WBOY
Release: 2016-06-23 13:35:54
Original
1173 people have browsed it

在一篇文章中随机插入数个关键词(关键词个数要可以控制)
在文章的随机位置插入随机数目的随机关键词。
比如说限定是插入3个关键词。那么在文章里插入的关键词个数为3个。
插入的位置也为随机位置。 

求实例函数 求大师赐教


回复讨论(解决方案)

如果文章中不含有 html 标记,那么问题比较简单
但如果含有的话,问题就非常复杂了

你打算要处理那种情况的?想好了再说!

就是TXT文本,没有html标签

$s =<<< TXT在一篇文章中随机插入数个关键词(关键词个数要可以控制)在文章的随机位置插入随机数目的随机关键词。比如说限定是插入3个关键词。那么在文章里插入的关键词个数为3个。插入的位置也为随机位置。 TXT;$w = '关键词,随机,插入';echo foo($s, $w);function foo($txt, $word, $charset='gbk') {  foreach(explode(',', $word) as $v) $tmp[] = iconv($charset, 'ucs-2', "【{$v}】");  $txt = iconv($charset, 'ucs-2', $txt);  for($i=0; $i<count($tmp); $i++) {    $n = rand(0, strlen($txt) / 2) * 2;    $txt = substr($txt, 0, $n) . $tmp[$i] . substr($txt, $n);  }  return iconv('ucs-2', $charset, $txt);}
Copy after login
Copy after login
在一篇文章中随机插入数个关键词(关键词个数要可以控制)
在文章的随机位置插入随机数目的随机关键词。
【随机】
比如说限定是插入3个关键词【插入】。那么在文【关键词】章里插入的关键词个数为3个。
插入的位置也为随机位置。

$s =<<< TXT在一篇文章中随机插入数个关键词(关键词个数要可以控制)在文章的随机位置插入随机数目的随机关键词。比如说限定是插入3个关键词。那么在文章里插入的关键词个数为3个。插入的位置也为随机位置。 TXT;$w = '关键词,随机,插入';echo foo($s, $w);function foo($txt, $word, $charset='gbk') {  foreach(explode(',', $word) as $v) $tmp[] = iconv($charset, 'ucs-2', "【{$v}】");  $txt = iconv($charset, 'ucs-2', $txt);  for($i=0; $i<count($tmp); $i++) {    $n = rand(0, strlen($txt) / 2) * 2;    $txt = substr($txt, 0, $n) . $tmp[$i] . substr($txt, $n);  }  return iconv('ucs-2', $charset, $txt);}
Copy after login
Copy after login
在一篇文章中随机插入数个关键词(关键词个数要可以控制)
在文章的随机位置插入随机数目的随机关键词。
【随机】
比如说限定是插入3个关键词【插入】。那么在文【关键词】章里插入的关键词个数为3个。
插入的位置也为随机位置。 

要是有HTML代码,有什么好的方法
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template