Funktsiya preg_replace_callback
preg_replace_callback funktsiyasi regular ifoda orqali qidiruv va almashtirishni callback-funktsiyasidan foydalangan holda bajaradi. Birinchi parametr sifatida regular ifodani, ikkinchi parametr sifatida callback-funktsiyasini, uchinchi parametr sifatida esa qayta ishlanadigan satrni qabul qiladi. Callback-funktsiyasi mosliklar massivini oladi va almashtirish satrini qaytarishi kerak.
Sintaksis
preg_replace_callback(pattern, callback, subject, [limit], [count]);
Misol
Satrdagi barcha raqamlarni ularning kvadratlari bilan almashtiramiz:
<?php
$str = 'Raqamlar: 2, 4, 6';
$res = preg_replace_callback('/\d+/', function($matches) {
return $matches[0] * $matches[0];
}, $str);
echo $res;
?>
Kodni bajarish natijasi:
'Raqamlar: 4, 16, 36'
Misol
Barcha so'zlarni bosh harfga o'zgartiramiz:
<?php
$str = 'salom dunyo';
$res = preg_replace_callback('/\b\w+\b/', function($matches) {
return strtoupper($matches[0]);
}, $str);
echo $res;
?>
Kodni bajarish natijasi:
'SALOM DUNYO'
Misol
Har bir raqam atrofida qavslarni qo'shamiz:
<?php
$str = '1 2 3 4 5';
$res = preg_replace_callback('/\d+/', function($matches) {
return '('.$matches[0].')';
}, $str);
echo $res;
?>
Kodni bajarish natijasi:
'(1) (2) (3) (4) (5)'
Shuningdek qarang
-
preg_replacefunktsiyasini,
regular ifoda orqali almashtirishni bajaradi -
preg_matchfunktsiyasini,
regular ifoda orqali qidiruvni bajaradi