Blocchi automatici postato il 23/12/2015 21:37:52 nel forum programmazione, gdrcd e open source e modificato da gdr-online.com il 24/12/2015 09:51:14
Buonasera a tutti
faccio questo breve post per cercare una soluzione ad un problema che mi attanaglia da un paio di questi giorni.
Ho creato un writer avente queste caratteristiche:
Pagine → 1
23/12/2015 21:51:12
Per quello che devi fare le funzioni strlen() http://php.net/manual/en/function.strlen.php e substr() http://php.net/manual/en/function.substr.php sono le funzioni che ti possono essere utili per quello che devi fare.
La prima ti permette di contare la lunghezza della stringa ritornandoti il numero di caratteri della stessa (utile per calcolare il numero di blocchi di 1000 caratteri in cui splittare la stringa.
La seconda di estrapolare porzioni di stringa da una stringa base.
La parte più grossa da fare sarà quella di fare il controllo se la stringa non sia spezzata in due nel bel mezzo di una parola ma prima o dopo di questa.
23/12/2015 23:53:44
La cosa piu' comoda è partire dal millesimo carattere, verso il basso e beccare uno spazio.
24/12/2015 09:40:48 e modificato da longbow il 24/12/2015 09:41:22
30/12/2015 00:05:41
Sempre che un utente non scriva oltre anche i 2000 caratteri...
A questo punto una soluzione potrebbe essere, laddove abbia scritto piu' di mille caratteri, di fare semplicemente
$blocchi = 1 + floor($lunghezza/1000);
In questo caso:
$lunghezza
0 - 1000, $blocchi = 1
1000 - 1999, $blocchi = 2
2000 - 2999, $blocchi = 3
ecc...
$lunghezzamedia = floor(1000/$blocchi);
In questo modo dividi gli "n" blocchi in gruppi piu o meno uguali di lettere.
Cicli poi la funzione che t'ho passato io, magari implementandola anche col "." se vuoi avere una cosa piu' leggibile (Come suggerivano dopo di me).
Per esempio 2700 caratteri, sono 3 blocchi, $lunghezzamedia = 900 parole...
30/12/2015 01:15:25
Ma.....perchè?
Cioè prima imponi un limite di caratteri e poi costruisci un sistema per aggirarlo in modo automatico?
Ok, l'esercizio di informatica è interessante.
Ma a livello di gameplay è una cosa insensata, ti crei problemi da solo e crei soluzioni complicate per risolvere un problema che potresti semplicemente eliminare alla radice. Rimuovi il limite e basta.
30/12/2015 08:49:49
mrpanda, le tue soluzioni sono molto interessante però avrei un problemino più grande, ovvero la funzione "strripos" che gira solo dal PHP 5 in poi mentre io "lavoro" ancora con l'obsoleto (ma dannatamente comodo) PHP 4 lol
Io in realtà, all'inizio, pensavo di agire con un array tipo:
30/12/2015 20:11:43
31/12/2015 09:40:58 e modificato da miagy il 31/12/2015 09:46:14
Posso dire che sono felice di assistere a questo scambio civilissimo di idee e discussione sana?
Era tipo da una vita che non assistivo a questi dibattiti :-D
01/01/2016 19:08:13
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Aggiungi ai Preferiti Inoltra Discussione Forum Programmazione, GDRCD e Open Source Elenco Forum
I dati del generatore di rank sono stati aggiornati!