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

search for in the

md5_file> <localeconv
[edit] Last updated: Fri, 07 Jun 2013

view this page in

ltrim

(PHP 4, PHP 5)

ltrimRetira espacios en blanco (u otros caracteres) del inicio de un string

Descripción

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

Retira espacios en blanco (u otros caracteres) del inicio de un string.

Parámetros

str

El string de entrada.

charlist

Se puede también especificar los caracteres que se desean retirar por medio del parámetro charlist. Simplemente se listan todos los caracteres que se quieren retirar. Con .. se puede especificar un rango de caracteres.

Valores devueltos

Esta función devuelve un string con los espacios en blanco retirados del inicio de str. Sin el segundo parámetro, ltrim() retirará estos caracteres:

  • " " (ASCII 32 (0x20)), un espacio ordinario.
  • "\t" (ASCII 9 (0x09)), un tabulador.
  • "\n" (ASCII 10 (0x0A)), una nueva línea (line feed).
  • "\r" (ASCII 13 (0x0D)), un retorno de carro.
  • "\0" (ASCII 0 (0x00)), el byte NULL.
  • "\x0B" (ASCII 11 (0x0B)), un tabulador vertical.

Historial de cambios

Versión Descripción
4.1.0 Fue agregado el parámetro charlist.

Ejemplos

Ejemplo #1 Ejemplo de uso de 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);
var_dump($trimmed);

$trimmed ltrim($text" \t.");
var_dump($trimmed);

$trimmed ltrim($hello"Hdle");
var_dump($trimmed);

// retira los caracteres ASCII de control al inicio de $binary
// (de 0 a 31 inclusive)
$clean ltrim($binary"\x00..\x1F");
var_dump($clean);

?>

El resultado del ejemplo sería:

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
"

Ver también

  • trim() - Elimina espacio en blanco (u otro tipo de caracteres) del inicio y el final de la cadena
  • rtrim() - Retira los espacios en blanco (u otros caracteres) del final de un string



md5_file> <localeconv
[edit] Last updated: Fri, 07 Jun 2013
 
add a note add a note User Contributed Notes ltrim - [6 notes]
up
7
John Sherwood
6 years ago
To remove leading/trailing zeroes (example: "0123.4560"), doing a += 0 is easier than trim tricks.
up
4
dzek dot remove_this at dzek dot eu
1 year ago
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.
up
2
Mike
2 years ago
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.
up
1
Usamah M dot Ali (usamah1228 at gmail dot com)
5 years ago
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).
up
-1
tanmar.de
3 years ago
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.
up
-2
pLIMP
10 months ago
Function similar to ltrim only it will remove everything from the start of the string to the last occurence of anything in the  $charlist

<?php

function lstrip($string, $charlist) {
   
// removes everything from start of string to last occurence of char in charlist

   
$charlist = str_split($charlist);

    foreach (
$charlist as $char) {
       
$pos = max(strrpos($string, $char), $pos);
    }

   
$string_stripped = substr($string, $pos + 1);

    return
$string_stripped;

}

?>

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