ltrim

(PHP 4, PHP 5)

ltrim Rimuove gli spazi (o altri caratteri) dall'inizio di una stringa

Descrizione

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

Nota: Il secondo parametro è stato aggiunto nella versione 4.1.0 di PHP.

Questa funzione restituisce la stringa str a cui sono stati rimossi gli spazi iniziali. Senza la specifica del secondo parametro ltrim() rimuoverà i seguenti caratteri:

  • " " (ASCII 32 (0x20)), spazio ordinario.
  • "\t" (ASCII 9 (0x09)), tab.
  • "\n" (ASCII 10 (0x0A)), newline (line feed).
  • "\r" (ASCII 13 (0x0D)), carriage return.
  • "\0" (ASCII 0 (0x00)), il byte NUL.
  • "\x0B" (ASCII 11 (0x0B)), il tab verticale.

Si può anche specificare i caratteri che si desidera rimuovere, indicandoli nel parametro charlist. Quest'ultimo è costituito da un semplice elenco di caratteri da rimuovere. Con .. si può specificare un range di caratteri.

Example #1 Esempio di uso di ltrim()

<?php

$text 
"\t\tThese are a few words :) ...  ";
$trimmed ltrim($text);
// $trimmed = "These are a few words :) ...  "
$trimmed ltrim($text" \t.");
// $trimmed = "These are a few words :) ...  "
$clean ltrim($binary"\x00..\x1F");
// rimuove i caratteri di controllo ASCII dall'inizio di $binary 
// (from 0 to 31 inclusive)

?>

Vedere anche trim() and rtrim().

add a note add a note

User Contributed Notes 7 notes

up
3
dzek dot remove_this at dzek dot eu
2 years 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
1
John Sherwood
7 years ago
To remove leading/trailing zeroes (example: "0123.4560"), doing a += 0 is easier than trim tricks.
up
0
mroeling at exed dot nl
12 days ago
@scion4581

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.
up
0
scion4581 at mail dot ru
1 month ago
What i found and i can't get why:

$word = 'stw_weight';
echo ltrim($word, 'stw_');

output:  eight instead weight

If anybody know plz let me know
up
0
juan at ecogomera dot com
4 months ago
+=0 not valid for something like 0000-5. Result is 0
up
0
Mike
3 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
0
Usamah M dot Ali (usamah1228 at gmail dot com)
6 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).
To Top