- Home
- Categorie
- Coding e Sistemistica
- PHP
- Explode ultimo trattino
-
Se sono tutte immagini con estensione jpg, potresti rovesciare i nomi del file con strrev ed inserirli in un array. Poi ordini l'array in ordine alfanumerico e alla fine rovesci di nuovo i nomi dei file.
Ti torna?
-
@olaola said:
Se sono tutte immagini con estensione jpg, potresti rovesciare i nomi del file con strrev ed inserirli in un array. Poi ordini l'array in ordine alfanumerico e alla fine rovesci di nuovo i nomi dei file.
Ti torna?
però se i file sono
1.jpg
11.jpg
2.jpgmi sa che non li ordina bene
-
@Thedarkita said:
però se i file sono
1.jpg
11.jpg
2.jpgmi sa che non li ordina bene
ehm, hai azzecato in pieno. Avevo provato a fare così, però non li ordina bene... qualche suggerimento?
-
Ops, avete ragione
Inverter, mi sembra che la soluzione che tu hai proposto per prima debba funzionare.
Cosa ottieni stampando a video il contenuto di $image prima e dopo il riordinamento?
Come fai a scrivere il contenuto dell'array?
-
mm si, anche secondo me dovrebbe funzionare la prima soluzione.
Facciamo una cosa, domani mattina ci lavoro e soprattutto riordino il codice che praticamente non capisco più neanche io.
Grazie mille, vi faccio sapere
-
ok, sono riuscito ad orsinare le immagini, ma mi sorge un dubbio:
qualora io dovessi cancellare un immagine, non avrei più un indice dell'array consecutivo, bensì rischierei di avere un indice come, per esempio, 1,2,3,4,9,12.
Perciò, se, sempre per esempio, io sto visualizzando l'immagine che ha un indice 9 come faccio a sapere quale è l'id della foto precedente e quale quello della foto successiva?
-
beh l'array viene modificato quindi indice 4 dell'array ha 9 come valore... tu prendi l'indice 3 che ha valore 7 per esempio, e usi quello
-
mmm.. fose sto completamente sbagliando io.
Ricapitolo un pò la situazione:
- ho delle immagini in una cartella chiamate "1_x_y.jpg", "2_b_z_d.jpg" eccetera (ho cambiato la posizione del numero per comodità nel fare l'explode)
- queste immagini devono essere ordinate in modo decrescente rispetto al numero presente nel nome dell'immagine.
- il sistema deve essere il più elastico possibile, nel senso che se volessi eliminare una foto vorrei poterlo fare senza dover modificare un eventuale codice (ma questo mi sembra ovvio dato che il php è fatto per questo :D)
tutto qui... scusate, sono io che sto complicando il problema che in realtà è più semplice di quello che sembra
Grazie mille!:)
-
allora tu ha l'array cosi
indice - valore
0 - 1
1 - 2
2 - 3
3 - 4
4 - 5
ecctogli l'immagine 3 e l'array diventa cosi:
0 - 1
1 - 2
2 - 4
3 - 5
eccse sei sull'immagine 4, che ha indice 2 è sufficiente prendere il valore dell'indice precedente, e ottieni l'immagine precedente...
-
eh, ma al momento io per ordinare le foto utilizzo come indice il numero che c'è nella immagine... quindi nel caso io ne elimini una l'indice ha un buco...
-
potresti controllare ke l'indice precendente sia settato, se p settato allora è quella l'immagine precendente, altrimenti scorri tutto l'array all'indietro alla ricerca del indice precedente... oltre questo non mi viene nulla in mente
-
stavo pensando che forse potrei creare un array multidimensionale in cui:
in un indice inserisco il normale indice 1 2 3 4 e via dicendo (creato dinamicamente così che di ricostruisca anche in caso elimini una foto).
nell'altro indice inserisco il numero che metto nella immagine (uppure anche la data di creazione presa con filemtime).Il problema sarevbbe ordinare questo array