![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 4.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Głowię się nad tym, w jaki sposób stworzyć skrypt, który robił by coś w ten deseń (inaczej tego wyjaśnić się nie da): Na początku posiadamy np. 5 plików: 1. Plik1 2. Plik2 3. Plik3 4. Plik4 5. Plik5 Po uruchomieniu danego skryptu, miesza on nam nazwy plików, tzn.: 1. Plik3 (pierwotnie Plik1) 2. Plik5 (pierwotnie Plik2) 3. Plik1 (pierwotnie Plik3) 4. Plik2 (pierwotnie Plik4) 5. Plik4 (pierwotnie Plik5) Oczywiście plików będzie więcej, a głownym zadaniem jest po prostu zmiana nazw plików, może być również przesunięcie nazw tzn Plik1 nazywał by się potem Plik2, a Plik5 nazywał by się tak jak 1. czyli Plik1. Myślałem o wsadzeniu wszystkich nazw do tablicy, później nadawaniu dla każdego pliku nowej nazwy z przesunięciem które sobie wybiorę, ale wtedy końcowe pliki mają nazwę początkowych, więc trzeba to zabezpieczyć. W ogóle nie wiem jak się za to chwycić, może nie da się tego zrobić akurat w PHP, patrzyłem również funkcje w TotalCommanderze, ale nie znalazłem ciekawych opcji. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 79 Pomógł: 0 Dołączył: 26.03.2011 Skąd: Dąbrowa Górnicza Ostrzeżenie: (0%) ![]() ![]() |
Mi to wygląda na randomizacje.
Zapisujesz w jakimś stringu nazwy po kolei wszystkich plików. $temp=temp.':'.$nazwapliku; jeśli temp jest pusty to $temp=$nazwapliku Wszystkie pliki zmieniasz nazwę np na "a0" i tak do ostatniego pliku. Później $temp rozwalasz na tablicę. I teraz począwszy od a0 randomizujesz liczbę całkowitą i sprawdzasz pętelką w dół czy liczba już jest używana, jeśli tak randomizujesz dalej jeśli nie, zmieniasz nazwę a0 na nazwę która się skrywa pod tym numerem w tablicy i przechodzisz do do następnego elementu, aż ci się skończą pliki. Jedyną wadą tego algorytmu jest rozszerzenia. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 4.01.2013 Ostrzeżenie: (0%) ![]() ![]() |
No właśnie o takim czymś myślałem, postaram się coś wykombinować, ale tablica i randomowe liczby są chyba najlepszym rozwiązaniem.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 20:37 |