PHP Array_Map -Funktion

PHP Array_Map -Funktion
Der array_map () Funktion wird in PHP verwendet, um ein mehrdimensionales Array zu erstellen, indem ein oder mehrere Arrays kombiniert werden. Eine andere Verwendung dieser Funktion besteht darin, jedes Element des Arrays basierend auf der spezifischen Bedingung zu ändern. Es sendet jeden Wert an eine benutzerdefinierte Rückruffunktion, die ein neues Array nach der Änderung zurückgibt. Die Verwendung dieser Funktion wird in diesem Tutorial erörtert.

Syntax

Array Array_Map (Callable $ Callback, Array $ Array, Array… $ arrays);

Die ersten und zweiten Argumente dieser Funktion sind obligatorisch. Das erste Argument enthält die Rückruffunktion, die die Array -Elemente ändert. Das zweite Argument enthält das Array, das geändert wird. Die anderen Argumente sind optional und werden verwendet, um andere Arrays zu speichern. Es wird ein von der Rückruffunktion generierter geänderter Array zurückgeben.

Verwendung der Funktion array_map ()

Die Verwendungen der Funktion array_map () für mehrere Zwecke sind in diesem Teil des Tutorials angezeigt.

Beispiel 1: Erstellen Sie ein Array, indem Sie die spezifischen Werte des Arrays entfernen
Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um ein neues Array zu erstellen, indem einige spezifische Werte aus dem Hauptarray entfernt werden. In dem Skript, das 5 Elemente enthält. Die Rückruffunktion aufgerufen callback_func () hat erklärt, ein neues Array zu erstellen, indem die Zahlen entfernt werden, die größer als 99 aus dem numerischen Array sind. Der Rückgabewert der Funktion array_map () wird später gedruckt:

// eine Reihe numerischer Daten deklarieren
$ num_array = array (78, 45, 300, 98, 690);
// Drucken Sie die Array -Werte
Echo "Array -Werte vor dem Aufrufen von Array_Map () Funktion:
";
print_r ($ num_array);
/*
Rückruffunktion deklarieren
Um diese Zahlen aus dem Array zu entfernen
Diese sind größer als 99
*/
Funktion Callback_func ($ value)

// Überprüfen Sie, ob der Wert größer als 99 ist oder nicht
if ($ value> 99)

// Entfernen Sie den Wert aus dem Array
unversehrt ($ value);

anders
Return $ value;

Echo "
Array -Werte nach dem Aufrufen von Array_Map () Funktion:
";
// Drucken Sie das Array nach dem Entfernen der leeren Werte
print_r (array_filter (array_map ("callback_func", $ num_array)));
?>

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des vorherigen Skripts angezeigt. Zwei Elemente im Array sind mehr als 99, die 300 und 690 sind. Diese beiden Elemente wurden aus dem Ausgangsarray entfernt.

Beispiel 2: Erstellen Sie ein Array, indem Sie die Daten mehrerer Arrays verwenden
Erstellen Sie eine PHP -Datei mit dem folgenden Skript, das ein Array erstellt, indem die Leistung berechnet wird, bei der der Basiswert von einem Array entnommen wird, und der Leistungswert von einem anderen Array entnommen wird. Das neu erzeugte Array wird später gedruckt:

// zwei numerische Arrays gleicher Elemente deklarieren
$ num_arr1 = Array (2, 3, 5, 8);
$ num_arr2 = Array (5, 4, 3, 2);
// Drucken Sie die Werte von zwei Arrays aus
Echo "
Die Werte von zwei Arrays:
";
print_r ($ num_arr1);
Echo "
";
print_r ($ num_arr2);
Echo "
";
/*
Definieren Sie die Rückruffunktion, um die leistungsbezogene Leistung zu berechnen
auf zwei Array -Werten, wobei der Wert des ersten Arrays
wird der Grundwert sein und der Wert des zweiten Arrays ist die Leistung.
*/
Funktion calculate_power ($ val1, $ val2)
// die Leistung berechnen
return pow ($ val1, $ val2);

// Drucken Sie das Array, das von Array_Map () Funktion zurückgegeben wurde
Echo "
Die von Array_Map () Funktion zurückgegebenen Array -Werte:
";
print_r (array_map ("calculate_power", $ num_arr1, $ num_arr2));
?>

Ausgang:

Nach der Ausführung des vorherigen Skripts wird die folgende Ausgabe angezeigt:

Beispiel 3: Erstellen Sie ein Array, indem Sie zwei Arrays ohne Rückruffunktion kombinieren
In den beiden vorherigen Beispielen wurde die Rückruffunktion im ersten Argument der Funktion array_map () verwendet. Diese Funktion kann jedoch ohne Rückruffunktion verwendet werden und die Null Der Wert wurde im ersten Argument der Funktion verwendet. Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um ein neues Array zu erstellen, indem Sie die Werte von zwei Arrays kombinieren, ohne eine Rückruffunktion zu verwenden:

// zwei Arrays von Stringwerten deklarieren
$ name_arr1 = array ("sakib", "sarleez", "janifer");
$ name_arr2 = array ("tania", "tawsif", "zafar", "fatema");
// Drucken Sie die Werte von zwei Arrays aus
Echo "
Die Werte von zwei Arrays:
";
print_r ($ name_arr1);
Echo "
";
print_r ($ name_arr2);
Echo "
";
// Drucken Sie das Array, das von Array_Map () Funktion zurückgegeben wurde
Echo "
Die von Array_Map () Funktion zurückgegebenen Array -Werte:
";
print_r (array_map (null, $ name_arr1, $ name_arr2));
?>

Ausgang:

Nach der Ausführung des vorherigen Skripts wird die folgende Ausgabe angezeigt:

Beispiel 4: Erstellen Sie ein Array, indem Sie die numerischen Werte eines assoziativen Arrays ändern
Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um die numerischen Werte des assoziativen Arrays zu ändern. Eine assoziative Reihe von zwei Elementen wurde im Drehbuch erklärt. Die Rückruffunktion benannt Modify_array () wurde deklariert, um hinzuzufügen “$Vor jedem Zahlenwert des Arrays.

// ein assoziatives Array deklarieren
$ assoc_array = ["name" => "pen", "preis" => 10];
// Drucken Sie die Array -Werte
Echo "Array -Werte vor dem Aufrufen von Array_Map () Funktion:
";
print_r ($ assoc_array);
/*
Deklarieren Sie eine Rückruffunktion zu
Fügen Sie vor jedem numerischen Wert des Arrays '$' hinzu
*/
Funktion modify_array ($ val)
if (is_numeric ($ val))
Rückgabe "$".$ val;
anders
$ val zurückgeben;

Echo "

Array -Werte nach dem Aufrufen von Array_Map () Funktion:
";
// Drucken Sie das geänderte Array
print_r (array_map ("modify_array", $ assoc_array));
?>

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des vorherigen Skripts angezeigt. Ein Element des Arrays enthält den numerischen Wert, der 10 ist. Der Wert hat sich im Ausgabearray auf „10 US -Dollar“ geändert.

Beispiel 5: Erstellen Sie ein Array basierend auf den Schlüssel und Werten des assoziativen Arrays
Die Funktion callback () der Funktion array_map () kann zwei Argumente für das assoziative Array aufnehmen. Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um ein neues Array mit den Tasten und den Werten des assoziativen Arrays zu generieren. Die Rückruffunktion benannt Modify_assoc_array () modify_assoc_array () Nehmen Sie den Schlüssel des Arrays im ersten Argument und den Wert des Arrays im zweiten Argument auf. Das Ausgangsarray enthält die kombinierten Werte von Schlüssel und Wert.

// ein assoziatives Array deklarieren
$ marks = ['01344' => 3.67, '01637' => 3.40, '05632' => 2.99, '03733' => 3.25];
// Drucken Sie die Array -Werte
Echo "Die Werte des assoziativen Arrays:
";
print_r ($ marks);
/*
Deklarieren Sie eine Rückruffunktion zu
Erstellen Sie ein neues Array basierend auf den Schlüssel und Werten
des assoziativen Arrays
*/
Funktion modify_assoc_array ($ val1, $ val2)
Return "Die CGPA von $ val1 ist $ val2";

Echo "

Die Array -Werte nach dem Aufrufen von Array_Map () -Funktion:
";
// Drucken Sie die Neuarray -Werte
print_r (array_map ('modify_assoc_array', array_keys ($ marks), array_values ​​($ marks)));
?>

Ausgang:

Nach der Ausführung des vorherigen Skripts wird die folgende Ausgabe angezeigt:

Abschluss

Die unterschiedlichen Verwendungen der Funktion array_map () wurden in diesem Tutorial erklärt. Hoffentlich kann dieser Artikel PHP -Benutzern helfen, den Zweck der Verwendung dieser Funktion zu kennen und sie in ihrem Skript ordnungsgemäß anzuwenden. Bitte besuchen Sie LinuxHint für informative Artikel.