Preg_replace_callback_array funksiýasy
preg_replace_callback_array funksiýasy, her bir regulýar ifade üçin dürli käbir funksiýalary ulanmak bilen setirde köp sanly çalşyrmalary ýerine ýetirmäge mümkinçilik berýär. Funksiýa ilkinji parametr hökmünde açary regulýar ifadeler, bahalary bolsa käbir funksiýalar bolan atlandyryjy sanawy kabul edýär. Ikinji parametr hökmünde gaýtadan işleniljek setir geçirilýär.
Sintaksis
preg_replace_callback_array(array $patterns_and_callbacks, string $subject): string
Mysal
Sanlary olaryň kwadratlary bilen, harp bolsa baş harp bilen çalşyryň:
<?php
$str = 'a1b2c3';
$res = preg_replace_callback_array([
'/\d+/' => function($matches) {
return $matches[0] * $matches[0];
},
'/[a-z]/' => function($matches) {
return strtoupper($matches[0]);
}
], $str);
echo $res;
?>
Kodyň ýerine ýetiriliş netijesi:
'A1B4C9'
Mysal
Seneleri bir formatdan beýlekisine öwüriň we sanlary ýogyn şekilde belläň:
<?php
$text = 'Date: 2023-05-15';
$res = preg_replace_callback_array([
'/(\d{4})-(\d{2})-(\d{2})/' => function($matches) {
return $matches[3].'.'.$matches[2].'.'.$matches[1];
},
'/\d+/' => function($matches) {
return '<b>'.$matches[0].'</b>';
}
], $text);
echo $res;
?>
Kodyň ýerine ýetiriliş netijesi:
'Date: <b>15</b>.<b>05</b>.<b>2023</b>'
Şeýle-de görüň
-
preg_replace_callbackfunksiýasyny,
ýagny bir käbir funksiýa bilen çalşyrmany ýerine ýetirýän funksiýa -
preg_replacefunksiýasyny,
ýagny regulýar ifade boýunça çalşyrmany ýerine ýetirýän funksiýa