Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    software per comprimere codice

    mi consigliate un software che mi comprima il codice togliando gli spazi e gli accapo?
    se lo fa anche su html e javascript è meglio.

  2. #2
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Se sei sotto linux usa sed

    sed s/\ //g nomefile > nomefile.new

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Scusa, mi rendo conto che ho detto una str*****
    Con quel comando rimpiazzi TUTTI gli spazi, quindi probabilmente non è quello che serve a te!

  4. #4
    Secondo me invece si... nel codice php non servono (quasi mai) gli spazi, nè gli a capo!
    Basta fare delle inclusioni fatte bene o sfruttare bene la sostituzione di variabile e si è a posto anche con il contenuto testuale!
    Can You See Curtains? Then Isn't Windows!

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    pero' bisogna stare attenti alle stringhe e ai tags che devono avere gli spazi... con un po' di impegno una regexp per escluderli si fa...

  6. #6
    Originariamente inviato da aleritty
    Secondo me invece si... nel codice php non servono (quasi mai) gli spazi, nè gli a capo!
    Basta fare delle inclusioni fatte bene o sfruttare bene la sostituzione di variabile e si è a posto anche con il contenuto testuale!
    scusami ma quest'assurdità è troppo estrema ... e le query? e i replace di testo? e le espressioni regolari? e i confronti dei valori in ingresso? per non parlare poi dei template contenenti codice php e altro ancora ...

  7. #7
    Originariamente inviato da daniele_dll
    scusami ma quest'assurdità è troppo estrema ... e le query? e i replace di testo? e le espressioni regolari? e i confronti dei valori in ingresso? per non parlare poi dei template contenenti codice php e altro ancora ...
    Infatti ho parlato delle sostituzioni di variabili... Nelle query (che devono essere poca parte del codice altrimenti hai sbagliato qualcosa), i replace di testo ecc. ecc. subentra la sostituzione di variabile! Ovvero che il codice è tutto appiccicato, ma il contenuto delle variabili non viene toccato dalla sostituzione di sed (grazie, la fai una volta e via, ma quando lo script gira mica fai girare anche sed ogni volta!!)

    Nei confronti, se confronti appunto due variabili a che ti servono gli spazi?? Nei nomi delle variabili non ce li puoi mettere anche volendo!
    Il valore in ingresso non viene toccato dal sed che viene eseguito sul codice (di nuovo... mica lo fai girare tutte le volte!!)
    Scusa, ma tu che regexp usi che ci piazzi degli spazi dentro??
    Ne prendo una bella lunga da php.net tanto per fare un esempio
    codice:
    ^([0-3]{0,1})([1-9]{1,1})([\-]{1,1})(([1]{1,1})([0-2]{1,1})|
    ([0]{0,1})([1-9]{1,1}))([\-]{1,1})([1-2]{1,1})(\d{3})$)|
    (^(([1]{1,1})([0-2]{1,1})|([0]{0,1})([1-9]{1,1}))([\-]{1,1})
    ([0-3]{0,1})([1-9]{1,1})([\-]{1,1})([1-2]{1,1})(\d{3})$)|
    (^([1-2]{1,1})(\d{3})([\-]{1,1})(([1]{1,1})([0-2]{1,1})|
    ([0]{0,1})([1-9]{1,1}))([\-]{1,1})([0-3]{0,1})([1-9]{1,1})$)
    Quanti spazi ci conti??
    Anche se devi cercare uno spazio usi \s... Gli spazi nelle regexp proprio...
    Mod... non mi dire che sparo assurdità... Che stai a di??


    Se parliamo poi di leggibilità del codice allora è diverso, ma mi sembrava ovvio per chiunque che sostituire tutti gli spazi e gli a capo faccia perdere totalmente leggibilità!
    Can You See Curtains? Then Isn't Windows!

  8. #8
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Puoi anche usare "\ " per indicare uno spazio nelle regexp (come nell'esempio di sopra). Funziona!

  9. #9
    Originariamente inviato da aleritty
    Infatti ho parlato delle sostituzioni di variabili... Nelle query (che devono essere poca parte del codice altrimenti hai sbagliato qualcosa), i replace di testo ecc. ecc. subentra la sostituzione di variabile! Ovvero che il codice è tutto appiccicato, ma il contenuto delle variabili non viene toccato dalla sostituzione di sed (grazie, la fai una volta e via, ma quando lo script gira mica fai girare anche sed ogni volta!!)
    Partendo dal fatto che non sono il numero di query presenti nel codice a discriminarne la qualità, non si può, con leggerezza, effettuare una serie di sostituzioni di variabili per il semplice motivo che una data variabile viene inizializzata, o reinizializzata, in quel punto c'è una buona ragione! L'unico modo per mantenere la compatibilità è fare un include, dov'è presente una data variabile da sostituire, e lo metti nel codice? Sarebbe l'unico modo per garantirne la funzionalità, ma ucciderebbe le prestazioni perché il sistema avrenne N file include per file php. L'unica alternativa sarebbe sviluppare un software che sia in grado di costruire un grafo partendo dal codice in modo da sapere dove e dove non mettere gli include, raggruppando le variabili con il contenuto e tutto quanto.

    Un'altra alternativa sarebbe quella di fare un file che viene incluso contenente delle funzioni che restituiscono le variabili

    Una soluzione, sicuramente, più efficace, è l'usare il base64 encode, che sarebbe più veloce sicuramente di usare una miriade di include ma comunque i vantaggi sono tutti da vedere.

    Detto questo, sinceramente, a cosa può servire rimuovere gli spazi e fare il file più piccolo? Viene eseguito dal server e sta sul server anche se recuperi un paio di kb sui grossi file qual'è il vantaggio?

    Se mi parlate di performance vi rispondo con APC, eAccelerator, ionCube, Zend e cosi via ... ammesso che evitiate al parser del leggere gli spazi, recuperereste qualche milli secondo ... persi dopo a causa dell'inclusione delle variabili

    bejelit, infatti, chiedeva anche per html e javascript perché è probabile che i suoi file php contengano codice html/js/css che viene scaricato dal cliente e che effettivamente compresso permetterebbe di risparmiare spazio.

  10. #10
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Serve sicuramente per i JS perchè il client deve scaricarsi il JS prima di poterlo eseguire. Dubito che serva molto per i PHP.

    Guarda il codice di TinyMCE tanto per fare un esempio (addirittura hanno una versione gzipped)

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.