Ao lidar com um array de objetos, como um array de objetos cat, extrair uma propriedade específica pode muitas vezes ser uma tarefa necessária. Neste caso específico, pretendemos extrair a propriedade id de cada objeto cat em um novo array.
Uma abordagem, conforme sugerido em sua pergunta, envolve o uso de array_walk() com create_function. Embora este método seja certamente viável, existe uma solução mais elegante e eficiente.
Introduzida no PHP 7.0, a função array_column() fornece uma maneira direta de extrair uma propriedade específica de uma matriz de objetos. A sintaxe é a seguinte:
array_column(array $input, string $column_key, string $index_key = null): array
No nosso caso, podemos usar array_column() para extraia a propriedade id do array $cats:
$catIds = array_column($cats, 'id');
A variável $catIds agora conterá uma matriz de IDs de gatos, facilitando o acesso e a manipulação desses valores conforme necessário.
É importante observar que, conforme mencionado na resposta do problema, a função array_column() requer que o array de origem seja um array ou conversível em um array. Se o seu array $cats não for um array, você precisará convertê-lo primeiro usando, por exemplo, a função get_object_vars().
Com este método, você pode extrair de maneira fácil e eficiente uma coluna de propriedades de uma variedade de objetos, agilizando suas tarefas de desenvolvimento PHP.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3