Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    formattazione testo in php

    salve ho una stringa di un len indefinito voglio ke il php conti ogni 10 caratteri della stringa e ke se non c e almeno uno spazio alla fine dei 10 caratteri metta un
    come facciooo???

  2. #2

  3. #3
    grazie ma nn e quello ke volevo quella funzione gia la conoscevo ma mi serverebbe ke venga contanta la stringa e ke per ogni 10 lettere nn e contenuto uno spazio alla fine mette un >br>

  4. #4
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    Originariamente inviato da Davideffe
    grazie ma nn e quello ke volevo quella funzione gia la conoscevo ma mi serverebbe ke venga contanta la stringa e ke per ogni 10 lettere nn e contenuto uno spazio alla fine mette un >br>
    mi fai il piacere di parlare in italiano?

  5. #5
    si scuca voglio fare un codice ke se una stringa non contiene spazi metta automaticamente de [b] a ogni tot di caratteri

  6. #6
    Utente di HTML.it L'avatar di gianiaz
    Registrato dal
    May 2001
    Messaggi
    8,027
    allora, con wordwrap puoi forzare il br spezzando le parole, ma cosi te lo ritrovi ogni N caratteri sia che ci sia la parola lunga che no..

    codice:
    $stringa = 'frase con una parola maggiore di quello che voglio 0123456789 (8 caratteri)';
    echo wordwrap ($stringa , 8, "
    ", 1);
    altrimenti prova questa funzione, l'ho scritta al volo :

    codice:
    <?php
    
    function spezzaparole($stringa, $caratteri) {
      
      $parole = explode(' ', $stringa);
      
      $numero_cicli = count($parole);
      
      $result = "";
      
      for($i = 0; $i < $numero_cicli; $i++) {
    
        $lunghezza_parola = strlen($parole[$i]);
        
        if($lunghezza_parola>$caratteri) {
    
          $pezzi_parola = $lunghezza_parola/$caratteri;
          
          $parola_nuova = "";
          
          // se l'ultimo pezzo è minore del numero di caratteri devo aggiungere 1
          if($lunghezza_parola%$caratteri) {
            
            $pezzi_parola++;
            
          } 
          
          for($z = 0; $z<($pezzi_parola-2); $z++) {
            
            $parola_nuova .= substr($parole[$i], $z*$caratteri, $caratteri)."
    ";
            
          }
          
          // l'ultimo pezzo lo tratto diversamente, aggiungo solo lo spazio
          $parola_nuova .= substr($parole[$i], $z*$caratteri).' ';
          
          $result .= $parola_nuova;
          
        } else {
          
          $result .= $parole[$i].' ';
          
        }
        
      } 
       
      return $result;
      
    }
    $stringa = 'frase con una parola maggiore di quello che voglio 0123456789 (8 caratteri)';
    
    echo spezzaparole($stringa, 8);
    ?>
    ciao

  7. #7
    perfetto era proprio quello ke cercavo grazie mille

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.