0

我想在每一行前面添加一个随机文本,如下所示:

前:

One
Two
Three

后:

Love One
My Two
Other Three

更新:抱歉造成混淆,我的意思是“之前”文本是 textarea 提交的文本,所以它在 $_POST 值中,我想要像“之后”文本一样的结果。简单来说,如下代码:假设前面的文本低于 $_POST['message'] 值,我想显该值,但前面有随机文本。

我试试这个,但只适用于第一行而不是另一行:

$rand = array("Love", "My", "Other");
$message = trim(@$_POST['message']) ;
$message = str_replace(" ","+",$message);//Convert the space to +
$modifiedTextAreaText = str_replace( "\n", "\n$rand", $message);//This One Not Working
echo $rand[array_rand($rand, 1)]. $modifiedTextAreaText ;//This one working only for the first line

谢谢

4

3 回答 3

2

您可以构建数组,然后随机播放两者或仅随机播放一个。然后将两者结合起来。

<?php
$rands = array("Love", "My", "Other");
shuffle($rands);
$words = array("One", "Two", "Three");
$new = array_combine($rands, $words);

foreach($new as $key => $val){
    echo "$key $val<br />\n";
}
于 2012-12-30T17:54:17.203 回答
2

你的意思是这样的:

<?php

$randomWords = array('Love', 'My', 'Other');

$randomKey = array_rand($randomWords, 1);
echo $randomWords[$randomKey] . " One<br />";

$randomKey = array_rand($randomWords, 1);
echo $randomWords[$randomKey] . " Two<br />";

$randomKey = array_rand($randomWords, 1);
echo $randomWords[$randomKey] . " Three<br />";
于 2012-12-30T17:14:40.033 回答
1

在数组中设置所需的文本并使用数组元素键调用 rand() 函数,然后打印元素示例

$text = array( 0=> "text0", 1=> "text1", 2=> "text2");
$randomtext = rand (0,2);
echo $text['$randtext'];
于 2012-12-30T17:08:23.577 回答