ďťż
Podstrony
|
telcocafe1. Jak usunąć z tablicy wszystkie klucze w tablicy których wartości rozpoczynają się od wybranego prefixu?2. Jak usunąć z wartości wszystkich kluczy w tablicy podaną frazę (np.: '.txt')? Mam kod, który dodaje wszystkie pliki do tablicy $table, usuwa 2 pierwsze klucze czyli "." i ".." a następnie pokazuje wszystkie elementy tablicy $table. zalezy mi aby nie pokazywał on rozszeżeń oraz by usuwał on z tablicy te klucze których wartość zaczyna się od wybranego prefixu Oto kod <?php $handle = opendir('.'); if ($handle = opendir('.')) { while (false !== ($file = readdir($handle))) { $table[] = $file; } closedir($handle); } array_splice($table, 0, 2); $wytnij = in_array('login_', $table); echo ($wytnij); for ($i=0; $i < count($table); $i++) { echo ("$table[$i]<br>"); } ?> Użytkownik kokoss15 edytował ten post 30 lipiec 2007, 09:21 1. Jak usunąć z tablicy wszystkie klucze w tablicy których wartości rozpoczynają się od wybranego prefixu? 2. Jak usunąć z wartości wszystkich kluczy w tablicy podaną frazę (np.: '.txt')? Mam kod, który dodaje wszystkie pliki do tablicy $table, usuwa 2 pierwsze klucze czyli "." i ".." a następnie pokazuje wszystkie elementy tablicy $table. zalezy mi aby nie pokazywał on rozszeżeń oraz by usuwał on z tablicy te klucze których wartość zaczyna się od wybranego prefixu Oto kod <?php $handle = opendir('.'); if ($handle = opendir('.')) { while (false !== ($file = readdir($handle))) { $table[] = $file; } closedir($handle); } array_splice($table, 0, 2); $wytnij = in_array('login_', $table); echo ($wytnij); for ($i=0; $i < count($table); $i++) { echo ("$table[$i]<br>"); } ?> Wystarczy odrobinkę pokombinować np. z array_walk czy choćby foreach. Wystarczy odrobinkę pokombinować np. z array_walk czy choćby foreach. Myślałem już nad tym ale teraz najciężej będzie napisać tą funkcję której ma używać... chyba można by było napisać pętlę for: function usun_txt($prefix) { global $table; for ($i=0; $i < count($table); $i++) { //instrukcja która sprawdza czy value klucza tablicy $table[$i] kończy się na .txt a jeżeli tak to usuwa to rozszeżenie //instrukcja która sprawdza czy value klucza tablicy $table[$i] zaczyna się na wybrany prefix np $prefix } jeli wpadnie ci cos doglowy apropo tego proszę, wyedytuj twoj post wzbogacajac go o np kod Użytkownik kokoss15 edytował ten post 30 lipiec 2007, 09:45 1. Jak usunąć z tablicy wszystkie klucze w tablicy których wartości rozpoczynają się od wybranego prefixu? <?php $tablica = array('prefix_aaa','bbb','ccc','prefix_ddd','fff','ggg' ); $tablica_new = array(); $prefix = 'prefix_'; foreach($tablica as $id => $item) { if (substr($item,0,strlen($prefix)) != $prefix) { array_push($tablica_new,$item); } } $tablica = $tablica_new; unset($tablica_new); echo '<pre>'; var_dump($tablica); echo '</pre>'; ?> 2. Jak usunąć z wartości wszystkich kluczy w tablicy podaną frazę (np.: '.txt')? <?php $tablica = array('aaa','bbb.txt','ccc','ddd','fff','ggg.txt'); for($i=0;$i<count($tablica);$i++) { $tablica[$i] = str_replace('.txt','',$tablica[$i]); } echo '<pre>'; var_dump($tablica); echo '</pre>'; ?> Użytkownik bryn edytował ten post 30 lipiec 2007, 09:51 |
|||
Sitedesign by AltusUmbrae. |