CascadiaPHP 2024

trim

(PHP 4, PHP 5, PHP 7, PHP 8)

trimDizgenin başındaki ve sonundaki boşlukları (veya diğer karakterleri) budar

Açıklama

trim(string $dizge, string $karakterler = " \n\r\t\v\x00"): string

Bu işlev dizge'nin başındaki ve sonundaki boşlukları budar. İkinci bağımsız değişken olmaksızın trim() sadece aşağıdaki karakterleri budayacaktır:

  • " " (ASCII 32 (0x20)), sıradan boşluk.
  • "\t" (ASCII 9 (0x09)), sekme.
  • "\n" (ASCII 10 (0x0A)), satırsonu.
  • "\r" (ASCII 13 (0x0D)), satırbaşı.
  • "\0" (ASCII 0 (0x00)), NUL-bayt.
  • "\v" (ASCII 11 (0x0B)), dikey sekme.

Bağımsız Değişkenler

dizge

Budanacak dizge.

karakterler

Seçimlik olarak, karakterler bağımsız değişkeni kullanılarak budanacak karakterler belirlenebilir. Basitçe budamak istediğiniz tüm karakterleri belirtin. Bir karakter aralığını .. kullanarak belirtebilirsiniz.

Dönen Değerler

Budanmış dizge.

Örnekler

Örnek 1 - trim() işlevinin kullanımı

<?php

$metin
= "\t\tBir kaç kelam :) ... ";
$ikil = "\x09Örnek dizge\x0A";
$selam = "Merhaba Dünya";
var_dump($metin, $ikil, $selam);

print
"\n";

$kırpık = trim($metin);
var_dump($kırpık);

$kırpık = trim($metin, " \t.");
var_dump($kırpık);

$kırpık = trim($selam, "aerMy");
var_dump($kırpık);

// $ikil'in başındaki ve sonundaki ASCII denetim karakterlerini budar
// (0'dan 31'e kadar, 0 ve 31 dahil)
$temiz = trim($ikil, "\x00..\x1F");
var_dump($temiz);

?>

Yukarıdaki örneğin çıktısı:

string(25) "            Bir kaç kelam :) ...  "
string(14) "    Örnek dizge
"
string(14) "Merhaba Dünya"

string(21) "Bir kaç kelam :) ..."
string(17) "Bir kaç kelam :)"
string(9) "haba Dün"
string(12) "Örnek dizge"

Örnek 2 - trim() işlevini dizi değerlerine uygulama

<?php
function değeri_buda(&$değer)
{
$değer = trim($değer);
}

$meyve = array('elma','muz ', ' muşmula ');
var_dump($meyve);

array_walk($meyve, 'değeri_buda');
var_dump($meyve);

?>

Yukarıdaki örneğin çıktısı:

array(3) {
  [0]=>
  string(4) "elma"
  [1]=>
  string(4) "muz "
  [2]=>
  string(10) " muşmula "
}
array(3) {
  [0]=>
  string(4) "elma"
  [1]=>
  string(3) "muz"
  [2]=>
  string(8) "muşmula"
}

Notlar

Bilginize: Olası sorun: Aradaki karakterlerin kaldırılması

trim() karakterleri bir dizenin başından ve sonundan kırptığı için, aradaki karakterlerin kırpılması (veya kırpılmaması) kafa karıştırıcı olabilir. trim('abc', 'bad') hem 'a' hem de 'b'yi kırpar, çünkü 'a'yı kırpar, böylece 'b' de kırpılmak üzere başa taşınmış olur. Yani, bu "çalışıyor" da trim('abc', 'b') "neden çalışmıyor"un açıklaması budur.

Ayrıca Bakınız

  • ltrim() - Dizgenin başındaki boşlukları (veya diğer karakterleri) budar
  • rtrim() - Dizgenin sonundaki boşlukları (veya diğer karakterleri) budar
  • str_replace() - Bir alt dizgenin bütün örneklerini yenisiyle değiştirir

add a note

User Contributed Notes 2 notes

up
13
pcoates at yukon1000 dot com
1 year 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']) : '';
up
2
gwyneth dot llewelyn at gwynethllewelyn dot net
11 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
To Top