PHP handleiding

PHP TUIS PHP Inleiding PHP installeer PHP sintaksis PHP opmerkings PHP veranderlikes PHP Echo / Druk PHP datatipes PHP Strings PHP-nommers PHP Wiskunde PHP konstante PHP-operateurs PHP As...Anders...Elseif PHP skakelaar PHP-lusse PHP funksies PHP-skikkings PHP Superglobals PHP RegEx

PHP- vorms

PHP-vormhantering PHP-vorm validering PHP-vorm word vereis PHP-vorm URL/e-pos PHP-vorm voltooi

PHP Gevorderd

PHP datum en tyd PHP sluit in PHP-lêerhantering PHP-lêer oop/lees PHP-lêer skep/skryf PHP-lêer oplaai PHP-koekies PHP-sessies PHP filters PHP-filters Gevorderd PHP-terugbelfunksies PHP JSON PHP-uitsonderings

PHP OOP

PHP Wat is OOP PHP Klasse/Objekte PHP Konstrukteur PHP vernietiger PHP Toegangswysigers PHP erfenis PHP konstante PHP Abstrakte Klasse PHP-koppelvlakke PHP eienskappe PHP statiese metodes PHP Statiese Eienskappe PHP naamruimtes PHP Iterables

MySQL- databasis

MySQL-databasis MySQL Connect MySQL Skep DB MySQL Skep tabel MySQL Voeg data in MySQL Kry Laaste ID MySQL Voeg veelvuldige in MySQL voorberei MySQL Kies Data MySQL Waar MySQL Bestel deur MySQL verwyder data MySQL-opdateringsdata MySQL-limietdata

PHP XML

PHP XML-ontleders PHP SimpleXML-ontleder PHP SimpleXML - Kry PHP XML Expat PHP XML DOM

PHP - AJAX

AJAX Intro AJAX PHP AJAX-databasis AJAX XML AJAX Live Search AJAX-peiling

PHP voorbeelde

PHP voorbeelde PHP samesteller PHP vasvra PHP Oefeninge PHP-sertifikaat

PHP- verwysing

PHP Oorsig PHP Skikking PHP-kalender PHP datum PHP gids PHP fout PHP-uitsondering PHP lêerstelsel PHP filter PHP FTP PHP JSON PHP sleutelwoorde PHP Libxml PHP-pos PHP Wiskunde PHP Diverse PHP MySQLi PHP-netwerk PHP-uitsetbeheer PHP RegEx PHP SimpleXML PHP-stroom PHP-string PHP veranderlike hantering PHP XML-ontleder PHP zip PHP Tydsones

PHP preg_replace_callback_array() Funksie

❮ PHP RegExp-verwysing

Voorbeeld

Wys hoeveel letters of syfers in elke woord in 'n sin gevind word:

<?php
function countLetters($matches) {
  return $matches[0] . '[' . strlen($matches[0]) . 'letter]';
}

function countDigits($matches) {
  return $matches[0] . '[' . strlen($matches[0]) . 'digit]';
}

$input = "There are 365 days in a year.";
$patterns = [
  '/\b[a-z]+\b/i' => 'countLetters',
  '/\b[0-9]+\b/' => 'countDigits'
];
$result = preg_replace_callback_array($patterns, $input);
echo $result;
?>

Definisie en gebruik

Die preg_replace_callback_array()funksie gee 'n string of 'n reeks stringe terug waarin passings van 'n stel gereelde uitdrukkings vervang word met die terugkeerwaarde van 'n terugbelfunksie.

Let wel: Vir elke string evalueer die funksie die patrone in die volgorde wat hulle gegee word. Die resultaat van die evaluering van die eerste patroon op die string word gebruik as die invoerstring vir die tweede patroon ensovoorts. Dit kan tot onverwagte gedrag lei.


Sintaksis

preg_replace_callback_array(patterns, input, limit, count)

Parameterwaardes

Parameter Description
pattern Required. An associative array which associates regular expression patterns to callback functions.

The callback functions have one parameter which is an array of matches.The first element in the array contains the match for the whole expression while the remaining elements have matches for each of the groups in the expression.
input Required. The string or array of strings in which replacements are being performed
limit Optional. Defaults to -1, meaning unlimited. Sets a limit to how many replacements can be done in each string
count Optional. After the function has executed, this variable will contain a number indicating how many replacements were performed

Tegniese besonderhede

Terugkeerwaarde: Wys 'n string of 'n reeks stringe wat voortspruit uit die toepassing van die vervangings op die invoerstring of stringe
PHP weergawe: 7+

Meer voorbeelde

Voorbeeld

Hierdie voorbeeld illustreer die potensieel onverwagte effekte van die patrone wat in volgorde geëvalueer word. Eerstens voeg die countLetters-vervanging "[4letter]" by "days" en, nadat daardie vervanging uitgevoer is, vind die countDigits-vervanging die "4" in "4letter" en voeg "[1digit]" daarby:

<?php
function countLetters($matches) {
  return $matches[0] . '[' . strlen($matches[0]) . 'letter]';
}

function countDigits($matches) {
  return $matches[0] . '[' . strlen($matches[0]) . 'digit]';
}

$input = "365 days";
$patterns = [
  '/[a-z]+/i' => 'countLetters',
  '/[0-9]+/' => 'countDigits'
];
$result = preg_replace_callback_array($patterns, $input);
echo $result;
?>

❮ PHP RegExp-verwysing