Другие языки программирования и технологии

Как удалить символ из переменной типа строки в PHP?

Уже всю документацию перерыл, так и не смог найти ответа. В Pascal'e есть функция delete, которая удаляет указанное количество символов с указанной позиции. Как известно, строка в РНР, как и в Паскале представлена почти как массив - к её элементам можно обратиться через номер, но вот функция для удаления элемента массива unset не работает. Если зделать что-то типа $stroka[10]="", то на месте "пустого места" появляется нечитаемый символ.
Надир Шапиев
Надир Шапиев
2 784
$str = str_replace("", "\n", $str); // вырезается символ ввода.

Отдельно следует рассмотреть функции поиска в строке. Strchr - Находит первое появление символа. strchr(haystack, needle); Эта функция является псевдонимом для функции strstr(), и полностью ей идентична. Возвращает все haystack с первого появления строки needle и до конца. Если параметр needle не найден, то возвращается false. Если параметр needle не является строкой, то он переводится в целое число и рассматривается как числовое значение символа. Strrpos - Находит позицию последнего появления символа в строке. Strrpos(haystack, needle); Возвращает номер позиции последнего появления символа needle в строке haystack. Следует отметить, что needle в этом случае может быть только единственным символом. Если в качестве параметра needle указывается строка, то только первый символ будет использован. Если needle не найден, то возвращается false. Если параметр needle не является строкой, то он переводится в десятичное число и рассматривается как числовое значение символа. Strrchr -- Находит последнее появление символа в строке.
Strrchr(haystack, needle); Эта функция возвращает позицию haystack, с которой начинается последнее появление needle и продолжается до конца haystack. Возвращает false если needle не найдена. Если параметр needle содержит более чем один символ, то используется первый символ. Если параметр needle не является строкой, то он переводится в целое число и рассматривается как числовое значение символа. Пример:

// получение всего после последней новой строки
$text = "Line 1\nLine 2\nLine 3";
$last = substr( strrchr( $text, 10 ), 1 );
Андрей Мурашкин
Андрей Мурашкин
2 189
Лучший ответ
ну если нет, то напиши свою функцию.
Кторая принимала бы строку, стартовую позицию и последнюю позицию удаляемых символов и возвращала бы новую строку....
Артур Черепанов < ?php
function TrimChars($str, $start, $end)
{
$len = strlen($str);
if($start=$len)
return $str;
if($end=$len)
return $str;
if($start>$end)
return $str;

$str1="";
for($i=0; $i < $len; $i++)
{
if($i > = $start && $i < = $end)
continue;
$str1 .= $str[$i];
}
return $str1;
}

echo TrimChars("роза упала...", 2,5);
? >
str_replace() вам в помощь
MA
M A N S U R
13 017
substr
Бекзат Акрем
Бекзат Акрем
2 992
$stroka[10]="" вместо "" попробуй NULL но точно не уверен, если удалить 1 букву из строчки надо, то норм str_replace('буква или несколько','здесь без пробела пусто',$str);