Forum Clubic

[PHP]: Contenus d'un fichier texte dans un tableau

Bonjour,

je voudrais savoir si qqun sait comment faire pour prendre du text dans un fichier et le mettre dans un tableau en forme de cercle, il y a une condition chaque ligne du tableau a un nombre de caracteres differentes ex :

Text qui est dans le fichier :

Les affaires reprennent pour l’international Suisse. A peine remis d’une double pubalgie
Alex Frei vient de signer un contrat de trois ans avec le géant americain PepSi.

Se qu’il faudrais faire c’est de mettre se text en forme suivante.

                 Les affaires
                reprennent pour 
             l'international Suisse
 A peine remis d'une double pubalgie
       Alex Frei vient de signer un 
             contrat de trois ans 
                 avec le géant 

Attention : les mots ne doivent pas être couper en plein milieu.

Merci d’avance.

Ayant déjà fait un script permettant de justifier du texte (et notamment des commentaires phpdoc), je peux te donner des pistes :

La première étape consiste à récupérer les mots. Ensuite c’est que du décompte de caractère (tant que tu n’as pas X caractère afficher le mot, sinon sauter à la ligne, X = 0, recommencer tant qu’il y a des mots).

Salut

Justement c’est se ke je fais. Je lis entierement la ligne et je sépare tout les mots. Ensuite je compte le nombre de caractere par mot et j’ajoute un espace.

Mais le probleme, c’est que je n’arrive pas, sauter à la ligne dés que j’arrive au nombre max de caractere.

Voici mon script

Je sais pas comment faire je suis bloquer…

Si vous pouvez m’aider sa serai cool… :slight_smile:

[CODE]

$fp = fopen("TestCommentaire.txt","r"); //Ouvre le fichier .txt

// Lecture de tout le fichier jusqu’à la fin

while(!feof($fp))//fgetc($fp) // tant qu’on est pas à la fin du fichier.
{
$ligne = fgets($fp,“4096”); // On lit la ligne
$mot = explode(" ",$ligne); // On separe tous les mots de la ligne

// Compt le nombre de caractere
// On compte le nombre de mot qu’il y a dans la phrase et incremante index par rapport
// Exemple : 3 mots => index = 3

for ($index=0; $index < count($mot);$index++)
{
$espace= " "; // Contien le caractere espace
$nbCar=0; // Renisialise à 0 le nb de caractere
$ligne2 ="";
$ligneLong=0; // Inisialise ligneLong
$selMot = $mot[$index]; // Selectionne un mots
$nbCar = strlen($selMot); // Calcule le nb de cars dans le mots selectionner
$test2 = -1*($nbCar);
$test= substr($ligne,$test2);

// Preparation 1 er ligne du tableau
$ligneLong = strlen($ligne1); // Calcule le nb de cars dans le mots selectionner
IF ($ligneLong <=10)
{
IF ($nbCar < 10)
{
$ligne1 = $ligne1.$selMot; // Ajoute le mots a la ligne
$ligne1 = $ligne1.$espace; // Ajoute à ligne un espace pr seprarer les mots
echo "<br>$ligne1<br>";
echo "<br>$ligneLong<br>";
echo "<br>$nbCar<br>";
}

IF ($nbCar == 10)
{
$ligne1 = $ligne1.$selMot; // Ajoute le mots a la ligne
echo "<br>$ligne1<br>";
echo "<br>$ligneLong<br>";
echo "<br>$nbCar<br>";
}
}

else If (($ligneLong >= 11) && ($ligneLong <= 14))
{
echo “C’est pour la 2eme ligne”;
IF ($ligne2 == “”)
{
$test= substr($ligne,$test2);
}
}
fclose($fp); // Fermeture du fichier
?>