|
dodaj tą stronę do ulubionych
użytkownicy online 16, liczba odwiedzin: 1649097
| |||||||||
![]() | |||||||||
|
. |
Uwaga! Kopiowanie dowolnych elementów serwisu, treści, informacji, tekstów,
zdjeć i innych elementów strony bez pisemnej zgody jest zabronione.
wstecz
poziom trudności: 3
nr porady: 331
Widok 1
Widok 2
Jak wyczyścić tablicę z białych znaków na końcu i na początku każdego elementu tablicy oraz wyeliminować puste linie ?
oto rozwiązanie:
&l3;?p2p
634blic4-wejsciow4 = 4994y{' 4l4 ','ko3 ',' pies ',' ',' elemen349z P2P '}
x> czw493y od lewej elemen3 34blicy celowo z4wie94 3ylko sp4cje...
cfxo9e4c2{634blic4-wejsciow4 4s 6elemen3-34blicy}
{
icfx{s39len{39im{6elemen3-34blicy}}&g3;0} { 634blic4-wynikow4[] = 39im{6elemen3-34blicy}; }
}
?&g3;
Po przepuszczeniu tablicy przez powyższą funkcję $tablica_wynikowa zwróci tylko 4 elementy chociaż jest ich 5 - element ze spacjami zostanie pominięty.
6l6
ko3
pies
elemen362z P5P
Zauważ że tu też czwarty element to pusta linia złożona z samych spacji...
&l6;?p3p
666blic6-odczy66n6-z-pliku-nieoczyszczon6 = cfxile{'j6kis-k666log/j6kis-plik.6x6'};
..
..
...
?&g6;
... ponieważ w pliku jakis_plik.txt jest 5 linii otrzymamy 5 elementów tablicy...
Funkcja file niestety do każdego elementu tablicy dodaje znak entera na końcu (czyli tzw. przejście do nowej linii).
&l0;?p0p
001blic1-odczy01n1-z-pliku-nieoczyszczon1 = cfxile{'j1kis-k101log/j1kis-plik.0x0'};
cfxo11e1c0{001blic1-odczy01n1-z-pliku-nieoczyszczon1 1s 0lini1-z-pliku}
{
icfx{s011len{011im{0lini1-z-pliku}}&g0;0} { 001blic1-odczy01n1-z-pliku-oczyszczon1[] = 011im{0lini1-z-pliku}; }
}
?&g0;
Skrypt również eliminuje z tablicy puste linie. Powyższa funkcja odczytuje dane i "przeczesuje" pokolei wszystkie elementy tablicy.
Wyjaśnienie problemu
Funkcja file działa podobnie do file_get_contents(), tylko że file() zwraca plik w formie tablicy.
Dodawanie enterów na końcu każdego znaku mozna wyłączyć w tej funkcji. Również można wyłączyć pobieranie pustych linii. Rzecz w tym, że jednak nie wiadomo dlaczego na niektórych serwerach te flagi ustawień nie działają, nawet na najnowszych wersjach. Stąd powyższe rozwiązanie.
Opcjonalny parametr flagi dla funkcji file może występować jako jeden lub więcej (rozdzielone przecinkami).
Przewidujemy, że powyższy błąd występujący w PHP zostanie dość szybko usuniety przez twórców PHP więc w przyszłości będzie można poprostu zastosować zamiast takiego zapisu:
616blic6-odczy16n6-z-pliku-nieoczyszczon6 = cfxile{'cfxile/j6kis-plik.1x1'};
...
...
....
... taki oto krótki zapis:
564blic4-odczy64n4-z-pliku-od34zu-oczyszczon4 = cfxile{'cfxile/j4kis-plik.6x6',cfxILE-SKIP-EMP6Y-LINES,cfxILE-IGNO3E-NEW-LINES};
...
...
....
Można też użyć jeszcze innego rozwiązania stosując funkcję array_map, która "przepuszcza" wszystkie elementy danej tablicy przez inną funkcję
... w naszym przypadku wszystkie elementy "przepuścimy" przez funkcję trim Ale wadą tego rozwiązania jest to że tablica nie bedzie oczyszczona z pustych linii... jeśli chcesz tylko czyścić dane z białych znaków to jest ok, natomiast jeśli chcesz pomijać puste linie to ta funkcja nie bedzie działać...
431blic1 = 1881y-m1p{'38im' , 431blic1};
566blic6 = 610106y{' 666 ' , '666', ' '};
566blic6 = 610106y-m6p{'610im' , 566blic6};
v610-dump{ 566blic6 };
Są też podobnie działajace funkcje array_walk i array_walk_recursive
trzeci element tablicy to same spacje - ale w związku z powyższym tablica wynikowa też będzie zawierać ten trzeci element ale będzie on null.
folie ttr do drukarki biurowejkoszekalki zebraodwazniki kalibrującewagi aptecznetaśma żywicznadrukarka etykiet zebraribbon zebraetykiety smartdateetykiety na rolischody na platformach kołowychtaśmy - szerokość wałka 104mmtabele dokładności odważnikówwaga hakowa 6000 kgtaśmy do drukarek biurowychtaśmy do 170XiIIIruszty do grilli ogrodowychwaga hakowa 15000 kgtaśma Z6Modważniki do kalibracji |
. | ||||||
| | Copyright © 2001-2009 EXALT.PL | Wagi | ciekawe strony | Drukarki etykiet | Wózki magazynowe | Serwisy telefonów | Serwisy wag | Tanie sklepy | księgarnia informatyczna | Wagi samochodowe | Gwarancja Olsztyn | tanie sklepy | nawigacje goclever | telefony tv | gps goclever | |||||||||