To highlight words in multi-byte text:
<?php
$s = 'Алабала';
$f = 'а';
echo preg_replace('/('.$f.')/iu', '<b>$1</b>', $s);
?>
(PHP 4 >= 4.2.0, PHP 5, PHP 7, PHP 8)
mb_eregi_replace — Harf büyüklüğüne duyarsız çok baytlı karakter destekli düzenli ifade yer değiştirmesi yapar
$kalıp
,$yeni
,$dizge
,$seçenekler
= null
dizge
içinde kalıp
eşleştirilmeye çalışılır, eşleşen parça yeni
si ile
değiştirilir.
kalıp
Düzenli ifade olarak kalıp. Çok baytlı karakterler kullanılabilir. Harf büyüklüğü dikkate alınmaz.
yeni
Yerleştirilecek metin.
dizge
İçinde kalıbın aranacağı dizge.
seçenekler
Başarı durumunda elde edilen dizgeyle aksi takdirde false
ile döner.
Geçerli karakter kodlamasına göre dizge
geçersiz ise
null
döner.
is returned.
Sürüm: | Açıklama |
---|---|
8.0.0 |
seçenekler artık null olabiliyor.
|
7.1.0 |
Geçerli karakter kodlamasına göre dizge
geçersiz ise artık null dönüyor.
|
7.1.0 |
e seçeneğinin kullanımı artık önerilmiyor.
|
Bilginize:
Bu işlev karakter kodlaması olarak dahili kodlamayı veya mb_regex_encoding() işlevi tarafından belirtilen karakter kodlamasını kullanır.
Güvenilmez girdilerle çalışırken e
değiştiricisini asla
kullanmayın. Otomatik önceleme yapılmayacaktır
(preg_replace() işlevinde olduğu gibi). Bunu dikkate
almazsanız, büyük olasılıkla uygulamanızda uzaktan kod çalıştırma açıkları
oluşacaktır.
To highlight words in multi-byte text:
<?php
$s = 'Алабала';
$f = 'а';
echo preg_replace('/('.$f.')/iu', '<b>$1</b>', $s);
?>
Transliterator for cyrillic-to-latin letters for UTF chars:
<?php
function do_translit($st) {
$replacement = array(
"й"=>"i","ц"=>"c","у"=>"u","к"=>"k","е"=>"e","н"=>"n",
"г"=>"g","ш"=>"sh","щ"=>"sh","з"=>"z","х"=>"x","ъ"=>"\'",
"ф"=>"f","ы"=>"i","в"=>"v","а"=>"a","п"=>"p","р"=>"r",
"о"=>"o","л"=>"l","д"=>"d","ж"=>"zh","э"=>"ie","ё"=>"e",
"я"=>"ya","ч"=>"ch","с"=>"c","м"=>"m","и"=>"i","т"=>"t",
"ь"=>"\'","б"=>"b","ю"=>"yu",
"Й"=>"I","Ц"=>"C","У"=>"U","К"=>"K","Е"=>"E","Н"=>"N",
"Г"=>"G","Ш"=>"SH","Щ"=>"SH","З"=>"Z","Х"=>"X","Ъ"=>"\'",
"Ф"=>"F","Ы"=>"I","В"=>"V","А"=>"A","П"=>"P","Р"=>"R",
"О"=>"O","Л"=>"L","Д"=>"D","Ж"=>"ZH","Э"=>"IE","Ё"=>"E",
"Я"=>"YA","Ч"=>"CH","С"=>"C","М"=>"M","И"=>"I","Т"=>"T",
"Ь"=>"\'","Б"=>"B","Ю"=>"YU",
);
foreach($replacement as $i=>$u) {
$st = mb_eregi_replace($i,$u,$st);
}
return $st;
}
?>