平。我非常感谢对此有所帮助。我正在创建一个非常简单的“查找和替换”应用程序来生成链接。我正在使用下面的代码来执行此操作。
它现在用我喜欢的任何东西取代“巧克力”这个词。但我也想通过按下相同的按钮来改变同一文本中的其他单词。
Forexample;如果我想将“爱”改为“讨厌”。
我该怎么做?感谢我能得到的所有帮助。
<?php
$offset=0;
if(isset($_POST['text']) && isset($_POST['searchfor']) && isset($_POST['replacewith']))
{
$text=$_POST['text'];
$search=$_POST['searchfor'];
$replace=$_POST['replacewith'];
$search_length=strlen($search);
if(!empty($text)&&!empty($search)&&!empty($replace))
{
$strpos=strpos($text,$search);
$text=substr_replace($text,$replace,$strpos,$search_length);
echo $new = str_replace(' ', '%20', $text);
}
else
{
echo 'pls fill in all fields';
}
}
?>
<form action='index.php' method='POST'>
<textarea name='text' style="display:none;" rows='6' cols='30'>http://andy.com/loves/chocolate/cake</textarea><br><br>
<input type='hidden' value= 'chocolate' name='searchfor'><br><br>
Replace the word chocolate with:</br>
<input type='text' name='replacewith'><br><br>
<input type='submit' value='find and replace'>
</form>
答案 0 :(得分:0)
您可以在str_replace中使用数组,因此此代码将在输入字段中使用2个逗号分隔的值进行操作:
$offset=0;
if(isset($_POST['text']) && isset($_POST['searchfor']) && isset($_POST['replacewith']))
{
$text=$_POST['text'];
$search=explode(",",$_POST['searchfor']);
$replace=explode(",",$_POST['replacewith']);
var_dump($replace);
$text=str_replace($search,$replace,$text);
echo $text;
}
<form action='#' method='POST'>
<textarea name='text' style="display:none;" rows='6' cols='30'>http://andy.com/loves/chocolate/cake </textarea><br><br>
<input type='hidden' value= 'chocolate,cake' name='searchfor'><br><br>
Replace the word chocolate with:</br>
<input type='text' name='replacewith'><br><br>
<input type='submit' value='find and replace'>
如果要使用2个(或更多)输入字段,请使用以下代码:
$offset=0;
if(isset($_POST['text']) && isset($_POST['searchfor']) && isset($_POST['replacewith']))
{
$text=$_POST['text'];
$search=explode(",",$_POST['searchfor']);
$replace=array($_POST['replacewith'],$_POST['replacewith2']);
var_dump($replace);
$text=str_replace($search,$replace,$text);
echo $text;
}
<form action='#' method='POST'>
<textarea name='text' style="display:none;" rows='6' cols='30'>http://andy.com/loves/chocolate/cake </textarea><br><br>
<input type='hidden' value= 'chocolate,cake' name='searchfor'><br><br>
Replace the word chocolate with:</br>
<input type='text' name='replacewith'><br>
Replace the word cake with:</br>
<input type='text' name='replacewith2'><br><br>
<input type='submit' value='find and replace'>