Eu tenho uma matriz da seguinte maneira
$fruit = array(' apple ','banana ', ' , ', ' cranberry ');
Eu quero uma matriz que contém os valores sem os espaços em branco em ambos os lados, mas pode conter valores vazios como fazer isso no php. A matriz de saída deve ser assim
$fruit = array('apple','banana', ',', 'cranberry');
array_map('rtrim', $fruit);
. Espero que ajude :)array_walk()
pode ser usado comtrim()
para aparar matrizVeja o segundo exemplo em http://www.php.net/manual/en/function.trim.php
fonte
Eu tive problemas com as respostas existentes ao usar matrizes multidimensionais. Esta solução funciona para mim.
fonte
Se a matriz for multidimensional, isso funcionará muito bem:
um teste de amostra é assim:
fonte
Se você deseja aparar e imprimir uma matriz dimensional ou a dimensão mais profunda da matriz multidimensional, use:
Se você deseja aparar, mas não deseja imprimir uma matriz dimensional ou a dimensão mais profunda da matriz multidimensional, use:
fonte
Solução à prova multidimensional:
fonte
null
.fonte
A saída do código acima é:
Mapa da matriz: 8.6775720119476 segundos
Caminhada da matriz: 10.423238992691 segundos
Foreach: 7.3502039909363 segundos
Para: 9.8266389369965 segundos
É claro que esses valores podem mudar, mas eu diria que é a melhor opção.
fonte
array_map('trim', $data)
converteria todos os subarrays emnull
. Se for necessário aparar espaços apenas para cadeias e deixar outros tipos como estão, você pode usar:fonte
Apare no tipo de alteração array_map se você tiver um valor NULL.
Melhor maneira de fazer isso:
fonte
simplesmente você pode usar regex para aparar todos os espaços ou reduzir seus itens de matriz
fonte
usando a função array_walk, podemos remover o espaço dos elementos da matriz e os elementos retornam o resultado na mesma matriz.
fonte