Убрать лишний символ php

ltrim

Удаляет пробелы (или другие символы) из начала строки.

Список параметров

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

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

  • » » ( ASCII 32 ( 0x20 )), обычный пробел.
  • «\t» ( ASCII 9 ( 0x09 )), символ табуляции.
  • «\n» ( ASCII 10 ( 0x0A )), символ перевода строки.
  • «\r» ( ASCII 13 ( 0x0D )), символ возврата каретки.
  • «\0» ( ASCII 0 ( 0x00 )), NUL -байт.
  • «\v» ( ASCII 11 ( 0x0B )), вертикальная табуляция.

Примеры

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

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

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

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

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

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

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

string(32) " These are a few words :) . " string(16) " Example string " string(11) "Hello World" string(30) "These are a few words :) . " string(30) "These are a few words :) . " string(7) "o World" string(15) "Example string "

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

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

User Contributed Notes 8 notes

When using a $character_mask the trimming stops at the first character that is not on that mask.

So in the $string = «Hello world» example with $character_mask = «Hdle», ltrim($hello, $character_mask) goes like this:
1. Check H from «Hello world» => it is in the $character_mask, so remove it
2. Check e from «ello world» => it is in the $character_mask, so remove it
3. Check l from «llo world» => it is in the $character_mask, so remove it
4. Check l from «lo world» => it is in the $character_mask, so remove it
5. Check o from «o world» => it is NOT in the $character_mask, exit the function

Remaining string is «o world».

I hope it helps someone as I had a confusing moment with this function.

For those who use right-to-left languages such as Arabic, Hebrew, etc., it’s worth mentioning that ltrim() (which stands for left trim) & rtrim() (which stands for right trim) DO NOT work contextually. The nomenclature is rather semantically incorrect. So in an RTL script, ltrim() will trim text from the right direction (i.e. beginning of RTL strings), and rtrim() will trim text from the left direction (i.e. end of RTL strings).

Guys, if += 0 is producing wrong values sometimes, and preg_replace is cpu consuming, then just stick to the main function described on that page, and use:
$value = ltrim ( $value , ‘0’ );
?>
should be the fastest and most reliable.
I think all those comments can be misleading for begginers checking this page — it’s sort of using magic tricks to reinvent the wheel.

Suppose you have to ltrim zeroes from strings like «015», «002», etc. and convert them back to numbers, eg. using intval.

Suppose you must convert to number «000» too.

$trimmedString = ltrim(‘000’, ‘0’);

the value of $trimmedString would be NULL (and I think the docs should mention this).

Anyway, I initially thought I had to conditional check for this ‘000’, but I found that intval(NULL) returns 0 (this thing is not in the docs of intval but is in a comment)

The problem is that the character mask (_stw in your case) isn’t a literal string, but a character collection. So all characters within _stw are stripped. In your case this includes the w of weight also.

Источник

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

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’]) : »;

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

Источник

trim

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

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

Примеры

Пример #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() — Заменяет все вхождения строки поиска на строку замены

Источник

Удалить указанные символы

Удалить указанные символы можно через функцию str_replace() .

$chars = ['!','#']; // символы для удаления str_replace($chars, '', 'PHP! #код#'); // PHP код 

2-ой способ: в начале и в конце строки

Удалить указанные символы в начале и в конце строки можно через функцию trim() .

# удаление символов в начале и в конце строки trim('#код#', '#'); // код trim('/index.html', '/'); // index.html trim('/page/about.html', '/'); // page/about.html 

Также есть функция ltrim() , которая удаляет указанные символы в начале строки, и функция rtrim() , которая удаляет указанные символы в конце строки.

3-ий способ: регулярные выражения

Удалить символы через регулярные выражения можно через функцию preg_replace() .

$chars = '!#'; // символы для удаления echo preg_replace('/['.$chars.']/', '', 'PHP! #код#'); // PHP код 

Авторизуйтесь, чтобы добавлять комментарии

Источник

Читайте также:  Tuple in python example
Оцените статью