#php #replace #word #letter
#php #заменить #word #буква
Вопрос:
Я искал ответ на эту тему, но не смог найти ответа. Я попытался заменить первую букву на последнюю букву в слове. Вот мой код на данный момент. Существует текстовая область, в которую вы не можете вставить текст, и слова будут видны друг под другом. Но я не смог найти способ сделать букву-изменить QQ
$array = explode(" ", $_POST["text"]);
if ($_POST["submit"])
{
echo "<pre>";
foreach ($array as $lijst)
{
if (strlen($lijst)>4)
{
$lijst1= substr_replace($lijst, $lijst[0],-1);
echo $lijst1;
echo "<br/>";
}else{
echo $lijst;
echo "<br/>";
}
}
echo "</pre>";
}
Комментарии:
1. требуется некоторое входное значение и на основе этого ожидаемый результат.
2. вы можете сделать это следующим образом:- eval.in/655381
3. Вы почти, но я думаю, что я пытаюсь заменить первую букву на последнюю букву в слове .
4. Как это работает не так, как ожидалось? Что вы получаете, что не так?
5. может быть, вам нужно очистить его, чтобы вы хотели изменить все слова с первой буквы на последнюю из текстовой области?
Ответ №1:
Это так просто, как
$array = explode(" ", $_POST["text"]);
if ($_POST["submit"]) {
echo "<pre>";
foreach ($array as $lijst) {
$lijst1 = $lijst;
if (strlen($lijst) > 4) {
$lijst1= $lijst[strlen($lijst)-1].substr($lijst,1,-1).$lijst[0];
}
/* Without redundant printing */
echo $lijst1;
echo "<br/>";
}
echo "</pre>";
}
Он просто создает новую строку, объединяющую: (последний символ) (от 2 до n-1 символа) (первый символ)
Ответ №2:
Попробуйте это.
foreach ($array as $lijst)
{
if (strlen($lijst)>4)
{
$first = $lijst[0];
$last = $lijst[strlen($lijst)-1];
$lijst[0] = $last;
$lijst[strlen($lijst)-1] = $first;
echo $lijst;
echo "<br/>";
}else{
echo $lijst;
echo "<br/>";
}
}
Это изменит первую и последнюю букву в слове, длина строки которого больше 4
Ответ №3:
Создайте функцию с именем swaprev()
, чтобы заменить первый символ на последний…
function swaprev($str){
$str = str_split($str);
$lc = $str[count($str)-1];
$fc = $str[0];
$str[0] = $lc; $str[count($str)-1] = $fc;
return implode('',$str);
}
$array = explode(" ", "textarea where you cant put text");
$array_out = [];
foreach($array as $lijst){
if (strlen($lijst) > 4)
$array_out[] = swaprev($lijst);
else
$array_out[] = $lijst;
}
echo implode(" ", $array_out);
Ответ №4:
<html>
<body>
<form method="post">
<input type="text" name="text">
<input name="submit" type="hidden" value="true">
<button>Send</button>
</form>
<?php
$array = explode(" ", $_POST["text"]);
if ($_POST["submit"])// maybe isset()?
{
echo "<pre>";
foreach ($array as $lijst)
{
if (strlen($lijst)>4)
{
$char1 = $lijst[0];
$char2 = $lijst[strlen($lijst) - 1];
$lijst1= $char2. substr($lijst,1,-1) . $char1;
echo $lijst1;
echo "<br/>";
}else{
echo $lijst;
echo "<br/>";
}
}
echo "</pre>";
}
?>
</body>
</html>