Как удалить последний символ в строке php
Перейти к содержимому

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

  • автор:

как удалить последний символ строки/укоротить строку

Нужно просто отрезать последнюю букву или перевести множественное число в единственное? Если первое — ну потрудитесь уже заглянуть в какой-нибудь «Учебник PHP для самых маленьких».

4 июн 2016 в 13:43

нужно первое я знаю как одно слово сделать, но мне нужна функция потому что слов много и у меня стоит if($a[$i]==$search)
если вы не поняли то там array

4 июн 2016 в 13:46
substr(«Финики», 0, -1)
4 июн 2016 в 14:02

@MasterAlex сделай это ответом, пожалуйста, тогда после редактирования вопроса можно будет похожие вопросы дубликатами делать

4 июн 2016 в 14:05
@strangeqargo MasterAlex а это неправильно для кириллицы.
4 июн 2016 в 14:10

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Если вам доступно расширение mb_string, можно поступить следующим образом

Функция mb_substr() возвращает подстроку первого аргумента, в качестве второго аргумента передается позиция откуда начинается подстрока (в нашем случае начало), а в качестве второго — длина подстроки (текущая длина строки минус один символ).

php Удалить первый и последний символ в строке [и пробелы в начале и конце]

vedro-compota's picture

Чтобы удалить сначала проблемы а потом ещё что-то, используйте такую функцию:

/** * Удалит сначала пробелы, а потом иные символы с начала и конца строки * * удалить символ в начале и конце строки * * @param string $str строка * @param string $symbls какие символы удалить после порбелов * @return string */ public static function trimSpacesAnd($str, $symbls) < $str = trim($str); // удаляем пробельные символы $str = trim($str, $symbls); // удаляем указанные символы return $str; >

Key Words for FKN + antitotal forum (CS VSU):

как удалить последний символ js

Для удаления последнего символа из строки можно воспользоваться методом slice() , передав ему первым аргументом 0 , а вторым — -1 . Метод вернёт новую строку, которая будет начинаться с начального (нулевого) символа, а заканчиваться на предпоследнем символе исходной строки.

const string = 'удалить последний символ%'; console.log(string.slice(0, -1)); // => удалить последний символ 

trim

Можно также задать список символов для удаления с помощью необязательного аргумента characters . Просто перечислите все символы, которые вы хотите удалить. Можно указать конструкцию .. для обозначения диапазона символов.

Возвращаемые значения

Примеры

Пример #1 Пример использования trim()

$text = «\t\tThese are a few words 🙂 . » ;
$binary = «\x09Example string\x0A» ;
$hello = «Hello World» ;
var_dump ( $text , $binary , $hello );

$trimmed = trim ( $text );
var_dump ( $trimmed );

$trimmed = trim ( $text , » \t.» );
var_dump ( $trimmed );

$trimmed = trim ( $hello , «Hdle» );
var_dump ( $trimmed );

$trimmed = trim ( $hello , ‘HdWr’ );
var_dump ( $trimmed );

// удаляем управляющие ASCII-символы с начала и конца $binary
// (от 0 до 31 включительно)
$clean = trim ( $binary , «\x00..\x1F» );
var_dump ( $clean );

Результат выполнения этого примера:

string(32) " These are a few words :) . " string(16) " Example string " string(11) "Hello World" string(28) "These are a few words :) . " string(24) "These are a few words :)" string(5) "o Wor" string(9) "ello Worl" string(14) "Example string"

Пример #2 Обрезание значений массива с помощью trim()

$fruit = array( ‘apple’ , ‘banana ‘ , ‘ cranberry ‘ );
var_dump ( $fruit );

array_walk ( $fruit , ‘trim_value’ );
var_dump ( $fruit );

Результат выполнения этого примера:

array(3) < [0]=>string(5) "apple" [1]=> string(7) "banana " [2]=> string(11) " cranberry " > array(3) < [0]=>string(5) "apple" [1]=> string(6) "banana" [2]=> string(9) "cranberry" >

Примечания

Замечание: Возможные трюки: удаление символов из середины строки

Так как trim() удаляет символы с начала и конца строки string , то удаление (или не удаление) символов из середины строки может ввести в недоумение. trim(‘abc’, ‘bad’) удалит как ‘a’, так и ‘b’, потому что удаление ‘a’ сдвинет ‘b’ к началу строки, что также позволит её удалить. Вот почему это «работает», тогда как trim(‘abc’, ‘b’) очевидно нет.

Смотрите также

  • ltrim() — Удаляет пробелы (или другие символы) из начала строки
  • rtrim() — Удаляет пробелы (или другие символы) из конца строки
  • str_replace() — Заменяет все вхождения строки поиска на строку замены

User Contributed Notes 2 notes

8 months ago

note there is a behaviour change in php 8

You used to be able to say:
$p1 = trim($_POST[‘p1’]);
This will now throw deprecated warnings if parameter p1 is not set. It is better to say:
$p1 = trim($_POST[‘p1’]??»);
or
$p1 = isset($_POST[‘p1’]) ? trim($_POST[‘p1’]) : null;
or
$p1 = isset($_POST[‘p1’]) ? trim($_POST[‘p1’]) : »;

6 months ago

Note that trim() is not aware of Unicode points that represent whitespace (e.g., in the General Punctuation block), except, of course, for the ones mentioned in this page.

There is no Unicode-specific trim function in PHP at the time of writing (July 2023), but you can try some examples of trims using multibyte strings posted on the comments for the mbstring extension: https://www.php.net/manual/en/ref.mbstring.php

  • Copyright © 2001-2024 The PHP Group
  • My PHP.net
  • Contact
  • Other PHP.net sites
  • Privacy policy

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *