Incrématation d'une chaine de caractère en php
mb42
Messages postés
553
Statut
Membre
-
Azraka Messages postés 265 Statut Membre -
Azraka Messages postés 265 Statut Membre -
Bonjour,
j'ai une variable qui a la valeur suivante Z000010
$i="Z000010";
je veux savoir comment incrémenter en php cette valeur par 1
c'est à dire la deuxième valeur sera Z000011 la troisième sera Z000012 et et ainsi de suite
car je veux utiliser ces valeurs dans un script
en fait je veux l'utiliser dans ce script
merci d'avance
j'ai une variable qui a la valeur suivante Z000010
$i="Z000010";
je veux savoir comment incrémenter en php cette valeur par 1
c'est à dire la deuxième valeur sera Z000011 la troisième sera Z000012 et et ainsi de suite
car je veux utiliser ces valeurs dans un script
en fait je veux l'utiliser dans ce script
<?php
session_start();
/** Error reporting */
ini_set('display_errors',1);
error_reporting(E_ALL);
/** LIBS * */
require_once("./lib/fpdf.php");
require_once("./lib/fpdi.php");
require_once ("./lib/class.phpmailer.php");
include "./lib/PDFMerger.php";
//Fichier CSV à parser
//$fichier = '/var/lib/mysql/test/Liste des SMS2.csv';
$fichier = '/home/test/Desktop/testt.csv';
//On vérifie que le fichier existe bien :)
$idtype='CIN';
$email='';
$genre='';
$ip_access='127.0.0.1';
$alias='';
if (file_exists($fichier))
{
//On l'ouvre en mode "read only"
$fp = fopen($fichier, 'r');
//Tant que l'on n'a pas finit de lire le fichier
//ici la première valeur
$i="Z000010";
while (!feof($fp)){
//On lit les 4096 caractères de la ligne
$ligne = fgets($fp,4096);
//echo $ligne;
/* On met dans un tableau toutes les données, séparées par des points virgules */
$liste = explode(';',$ligne);
/* On crée une colonne contenant les données pour chacune d'entre elles en parsant le tableau */
if($liste[0] != "" && $liste[1] != "" && $liste[2] != "" && $liste[3] != "" && $liste[4] != "" && $liste[5] != "" && $liste[6] != "" && $liste[7] != "" && $liste[8] != "")
{
$today=date("d/m/Y", strtotime($liste[4]));
$date_explosee = explode("/", $today);
$jour = $date_explosee[0];
$mois = $date_explosee[1];
$annee = $date_explosee[2];
$mobile=urlencode(str_replace("\r\n", "", trim($liste[0])));
$firstname=urlencode(str_replace("\r\n", "", trim($liste[1])));
$lastname=urlencode(str_replace("\r\n", "", trim($liste[2])));
$idcarde=urlencode(str_replace("\r\n", "", trim($liste[3])));
/***** DATA *****/
$pdf = & new FPDI();
$filename1 =generatePdf(1,$i,$liste[0],$liste[1] ,$liste[2],$genre,$jour,$mois,$annee,$idtype,$liste[3],$liste[5],$liste[7],$liste[8],$liste[6] ) ;
$pdf = & new FPDI();
$filename2 = generatePdf(2,$i,$liste[0],$liste[1] ,$liste[2],$genre,$jour,$mois,$annee,$idtype,$liste[3],$liste[5],$liste[7],$liste[8],$liste[6] ) ;
}
//ici l'incrémentation
$i=$i+1;
}
}
/* * *** Functions **** */
function generatePdf($modelNumber,$i,$tel,$nom
........
........
.........
.......
return $filename;
}
?>
merci d'avance
A voir également:
- Incrématation d'une chaine de caractère en php
- Caractère spéciaux - Guide
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractere vide - Guide
- Plus de chaine tv - Guide
2 réponses
Essaie l'opérateur ++.
$i++ ou ++$i incrémente ton truc comme tu le souhaite ( à vérifier quand même ^_^)
Sinon
Tu peux essayer d'enlever le "Z" voir enlever même les "0" et de commencer comme :
puis dans ta fonction generatePdf
Sinon tu passes par les expressions régulières, exemple ici :
https://stackoverflow.com/questions/4313288/how-to-increment-numeric-part-of-a-string-by-one
$i++ ou ++$i incrémente ton truc comme tu le souhaite ( à vérifier quand même ^_^)
Sinon
Tu peux essayer d'enlever le "Z" voir enlever même les "0" et de commencer comme :
//ici la première valeur $i=10;
puis dans ta fonction generatePdf
function generatePdf($modelNumber,$i,$tel,$nom... )
...
// ici tu reconstitue ton Z0000..
// genre
$recompose = "Z" . str_pad($i, 6, "0", STR_PAD_LEFT);
// voir même en faire une fonction et l'appeler avant d'appeler ta fonction generatepdf, ca t'evitera de modifier cette fonction
...
return $filename;
}
Sinon tu passes par les expressions régulières, exemple ici :
https://stackoverflow.com/questions/4313288/how-to-increment-numeric-part-of-a-string-by-one