J'ai un script php qui me permet de transformer un fichier TXT transmis quotidiennement sur mon FTP au format CSV pour pouvoir mettre à jour ma base de données produits.
Dans ce fichier, J'ai plusieurs colonnes dont le texte est en majuscules, et je souhaiterais que seule la première lettre soit en majuscule et le reste en minuscule.
Plutôt que de modifier plusieurs fichiers PHP de mon site avec des ucfirst(strtolower($texte)), je souhaiterais que cela soit fait directement dans le script.
Est-ce possible ? Si oui, comment puis-je faire ?
Merci par avance pour votre aide.
Code : Tout sélectionner
<?php
unlink("./data/updatedb.csv");
unlink("./data/stock.csv");
rename("./data/UPDATEDB.TXT", "./data/updatedb.csv");
$newfichier = fopen("./data/sortie_stock.csv", "w");
// crée le fichier cible s'il n'existe pas ou écrase s'il existe déjà
fclose($newfichier);
$lines = file('./data/updatedb.csv'); // ouverture du fichier d'origine
$fp = fopen("./data/stock.csv","w"); //création du fichier de sortie
$tampon = ""; // initialisation de la variable tampon
foreach ($lines as $lineNumber => $lineContent) // boucle pour parcourir le fichier d'origine
{
if (strpos($lineContent,"#<SEPARATOR>#") !== false) // condition si la ligne contient séparateur
{
$tampon = $tampon . str_replace(CHR(13),"",$lineContent); // ajout du contenu de la ligne au tampon
fputs($fp,$tampon); // écriture de la ligne tampon dans le fichier
echo $tampon; // affiche à l'écran le résulat
$tampon = ""; // clear du tampon
}else{ // condition si ne contient pas de séparateur
$tampon = $tampon . trim($lineContent); // alors ajoute le contenu au tampon déjà existant
}
}
fclose($fp); // fermeture du fichier
file_put_contents('./data/sortie_stock.csv', file_get_contents('./data/format.csv') . file_get_contents('./data/stock.csv') );
?>