(PHP 4, PHP 5, PHP 7, PHP 8)
addcslashes — Dizgeye C tarzı öncelem uygular
dizge
dizgesindeki karakterler
bağımsız değişkeninde listelenmiş karakterlerin önüne tersbölü yerleştirilerek elde edilen dizgeyi döndürür.
dizge
Öncelenecek dizge.
karakterler
Önlerine tersbölü konulacak \n
, \r
gibi karakterleri içeren dizge. Belirtilen karakterler C tarzı öncelenirken, ASCII kodu 32'den küçük ve 126'dan büyük karakterler sekizlik gösterimlerine dönüştürülür.
Burada karakter aralığı belirtiyorsanız aralığın hangi karakterleri içerdiğine dikkat etmelisiniz.
<?php
echo addcslashes('foo[ ]', 'A..z');
// çıktısı: \f\o\o\[ \]
// Tüm büyük ve küçük harflerden başka [\]^_` karakterleri de öncelenir
?>
<?php
echo addcslashes("zoo['.']", 'z..A');
// çıktısı: \zoo['\.']
?>
Karakterleri seçerken dikkatli olun: 0, a, b, f, n, r, t ve v karakterleri \0, \a, \b, \f, \n, \r, \t ve \v karakterlerine dönüştürülecektir. Bunların hepsi C tarzı öncelemde öntanımlı dizilimler olup PHP'de \0 (NULL), \r (satırbaşı), \n (satırsonu), \f (sayfa ileri), \v (düşey sekme) ve \t (yatay sekme) öntanımlı dizilimlerdir. Bu dizilimler ayrıca, PHP dahil C'den türetilmiş dillerde de tanımlıdır. Yani, karakterler
'de tanımlanan bu karakterlerle bu dillerde kod üretmek için addcslashes() çıktısını kullanmak istenen sonucu vermeyebilir.
Öncelenmiş dizge.
"\0..\37" gibi bir aralık ASCII kodu 0 ile 31 arasında kalan karakterlerin de öncelenmesini sağlayacaktır.
Örnek 1 - addcslashes() örneği
<?php
$öncelemli = addcslashes($öncelemsiz, "\0..\37!@\177..\377");
?>