downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

md5_file> <localeconv
[edit] Last updated: Fri, 18 Sep 2009

view this page in

ltrim

(PHP 4, PHP 5)

ltrimПремахва знаци в началото на низ

Описание

string ltrim ( string $str [, string $charlist ] )

Премахва знаци в началото на низ.

Параметри

str

Входният низ.

charlist

Символите, които трябва да се премахнат могат да се укажат, чрез незадължителния параметър charlist . Просто трябва да се изброят всички знаци, които трябва да бъдат премахнати. Посредством .. може да се укаже обхват от знаци.

Връщани стойности

Тази функция връща низа str с премахнати в началото знаци. Ако не е предаден втори параметър, функцията ltrim() ще изтрие следните знаци:

  • " " (ASCII 32 (0x20)), знак за обикновен интервал.
  • "\t" (ASCII 9 (0x09)), знак за табулация.
  • "\n" (ASCII 10 (0x0A)), знак за нов ред.
  • "\r" (ASCII 13 (0x0D)), знак за връщане на каретката.
  • "\0" (ASCII 0 (0x00)), NUL-байт.
  • "\x0B" (ASCII 11 (0x0B)), знак за вертикална табулация.

Дневник на промените

Версия Описание
4.1.0 Добавен е параметърът charlist .

Примери

Example #1 Пример за използването на ltrim()

<?php

$text 
"\t\tThese are a few words :) ...  ";
$binary "\x09Example string\x0A";
$hello  "Hello World";
var_dump($text$binary$hello);

print 
"\n";
$trimmed ltrim($text);
// $trimmed = "These are a few words :) ...  "
$trimmed ltrim($text" \t.");
// $trimmed = "These are a few words :) ...  "
$clean ltrim($binary"\x00..\x1F");
// премахване на контролните знаци (от 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() - Премахва знаци в края на низ



md5_file> <localeconv
[edit] Last updated: Fri, 18 Sep 2009
 
add a note add a note User Contributed Notes ltrim
dzek dot remove_this at dzek dot eu 24-Jul-2011 07:27
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:
<?php
$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.
Mike 08-Jan-2011 05:03
Keep in mind the amount of resources preg_replace() uses. 
I would suggest a simple if statement if you need to parse through large amounts of data. 
<?php
function remove_leading_zeros_from_number($number_string) {
 
$limit = 9000.1
  $temp
= $number
 
(float) $temp;
  if (
$number < $limit) {
   
$number += 0;
  } else {
   
preg_replace('~^[0]*([1-9][0-9]*)$~','$1',$number_string)
  }
}
?>

Code is untested, but probably sound.
tanmar.de 06-May-2010 04:36
The neat trick from Mr. Sherwood has only one ugly side-effect: If the "number" contained in the string is considerably large, you will end up with an int (or float) value that has nothing to do with the original number ...

You may use preg_replace instead:

$number_string = preg_replace('~^[0]*([1-9][0-9]*)$~','$1',$number_string);

This kills any leading zeros safely without changing any other data.

Hope this helps.
Usamah M dot Ali (usamah1228 at gmail dot com) 04-Feb-2008 07:42
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).
John Sherwood 06-Aug-2006 06:13
To remove leading/trailing zeroes (example: "0123.4560"), doing a += 0 is easier than trim tricks.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites