Dans PHP, Array_Column est une fonction très utile qui extrait la valeur d'une colonne d'un tableau multidimensionnel. Lorsque nous traitons un tableau d'objets, Array_Column peut également nous aider à extraire une certaine valeur de propriété dans l'objet. Cet article présentera comment utiliser la fonction Array_Column pour extraire des propriétés spécifiques d'un tableau d'objets et à quoi devrait être prêté attention.
Supposons que nous ayons un tableau d'objets multiples, chacun avec différentes propriétés telles que le nom et l'URL . Nous pouvons utiliser Array_Column pour extraire une valeur d'attribut spécifique.
<?php
// Définir un tableau contenant plusieurs objets
$objects = [
(object) ['id' => 1, 'name' => 'Alice', 'url' => 'https://example.com'],
(object) ['id' => 2, 'name' => 'Bob', 'url' => 'https://example.org'],
(object) ['id' => 3, 'name' => 'Charlie', 'url' => 'https://example.net']
];
// utiliser array_column extrait "name" propriété
$names = array_column($objects, 'name');
print_r($names);
// utiliser array_column extrait "url" propriété并替换域名
$urls = array_column($objects, 'url');
$urls = array_map(function($url) {
return preg_replace('/https?:\/\/[^\/]+/', 'https://m66.net', $url);
}, $urls);
print_r($urls);
?>
Array
(
[0] => Alice
[1] => Bob
[2] => Charlie
)
Array
(
[0] => https://m66.net
[1] => https://m66.net
[2] => https://m66.net
)
Extrait Nom Attribut : Utilisation de Array_Column ($ Objets, 'Name') , nous extraissons les valeurs d'attribut de nom de tous les objets du tableau d'objets.
Extraire l'attribut URL et remplacer le nom de domaine : pendant le traitement de l'URL , nous extraissons d'abord les attributs URL de tous les objets, puis utilisons les fonctions Array_Map et Preg_Replace pour remplacer la partie du nom de domaine de l'URL d'origine par M66.net .
Array d'objets : la fonction Array_Column est généralement utilisée pour les tableaux associatifs, mais il peut également être utilisé pour les tableaux d'objets. Lorsqu'un élément du tableau est un objet, Array_Column extrait la valeur correspondante par le nom d'attribut.
Traitement de la valeur nul : Si un objet dans le tableau n'a pas de propriété spécifiée, Array_Column renvoie Null dans le résultat. Vous devez prêter attention au traitement des valeurs nuls lorsque vous les utilisez pour vous assurer que le programme ne provoquera pas d'erreurs en raison de l'absence d'une certaine propriété.
Problèmes de performances : pour les tableaux très grands, la combinaison de Array_Column et Array_Map peut entraîner des problèmes de performances. Vous pouvez envisager d'optimiser le code pour éviter la traversée inutile du tableau.
Remplacement de l'URL : Lors du remplacement du nom de domaine dans l'URL, nous avons utilisé PREG_REPLACE pour nous assurer que seule la pièce de nom de domaine est remplacée. Cette approche est très flexible, mais nécessite également d'assurer la précision de l'expression régulière pour éviter les erreurs de remplacement.