Mam tablicę w następujący sposób
$fruit = array(' apple ','banana ', ' , ', ' cranberry ');
Chcę tablicę, która zawiera wartości bez białych spacji po obu stronach, ale może zawierać puste wartości, jak to zrobić w php. Tablica wyjściowa powinna być taka
$fruit = array('apple','banana', ',', 'cranberry');
array_map('rtrim', $fruit);
. Mam nadzieję, że to pomoże :)array_walk()
może być używanytrim()
do przycinania tablicyZobacz drugi przykład na stronie http://www.php.net/manual/en/function.trim.php
źródło
Miałem problemy z istniejącymi odpowiedziami, używając tablic wielowymiarowych. To rozwiązanie działa dla mnie.
źródło
Jeśli tablica jest wielowymiarowa, będzie to działać świetnie:
jeden przykładowy test wygląda następująco:
źródło
Jeśli chcesz przyciąć i wydrukować macierz jednowymiarową lub najgłębszy wymiar macierzy wielowymiarowej, powinieneś użyć:
Jeśli chcesz przyciąć, ale nie chcesz drukować macierzy jednowymiarowej lub najgłębszego wymiaru macierzy wielowymiarowej, powinieneś użyć:
źródło
Rozwiązanie wielowymiarowe:
źródło
null
.źródło
Dane wyjściowe powyższego kodu to:
Mapa tablic: 8,6775720119476 sekund
Spacer po tablicy: 10,423238992691 sekund
Foreach: 7,3502039909363 sekund
Dla: 9,8266389369965 sekund
Te wartości oczywiście mogą się zmienić, ale powiedziałbym, że Foreach jest najlepszą opcją.
źródło
array_map('trim', $data)
zamieniłby wszystkie subarray nanull
. Jeśli konieczne jest przycięcie spacji tylko dla ciągów i pozostawienie innych typów bez zmian, możesz użyć:źródło
Przytnij w typie zmiany tablicy_map, jeśli masz wartość NULL.
Lepszy sposób to zrobić:
źródło
po prostu możesz użyć wyrażenia regularnego, aby przyciąć wszystkie spacje lub zminimalizować elementy tablicy
źródło
za pomocą funkcji array_walk możemy usunąć przestrzeń z elementów tablicy, a elementy zwrócą wynik w tej samej tablicy.
źródło