Fonctions exlode et implode du php

4/5 (2 avis)

Snippet vu 4 666 fois - Téléchargée 40 fois

Contenu du snippet

Ce sont 2 fonctions diponibles par défaut en PHP.
Implode permet de convertir une TstringList en string en séparant chaque élément par le séparateur choisi (par défaut le ';')
Explode réalise l' opération inverse (il faut spécifier aussi le séparateur)

Source / Exemple :


function Explode(ch : string;sep: string = ';'):TStringList;
var
 p : integer;
begin
p := pos(sep,ch);
explode := TStringList.Create;
while p > 0 do begin
  explode.Add(copy(ch,1,p-1));
  if p <= length(ch) then ch := copy(ch,p+ length(sep),length(ch));
  p := pos(sep,ch);
end;
explode.Add(ch);
end;

function Implode(lst:TStringList;sep : string =';'):string;
var
  i : integer;
  s : string;
begin
 i:= 0;
 while i < lst.Count - 1 do begin
   s := s + lst[i] + sep;
   i := i + 1;
 end;
 if i < lst.Count then s := s + lst[i]; //Ne mets pas de séparateur sur le dernier élément
 result := s;
end;

A voir également

Ajouter un commentaire Commentaires
nememoris Messages postés 25 Date d'inscription mardi 21 février 2006 Statut Membre Dernière intervention 1 août 2007
13 juin 2007 à 13:59
Bonjour,

je debut ene delphi et vient du php Cette fonction répond parfaitement à mes attentes mais mon niveau en delphi est tellement faible que j aurais aimé quelque consiel pour mettre en oeuvre l explode.
en effet, j importe une ligne d un fichier csv et souhaiterais connaitre la procedure d'appel de la fonction explode et comment extraire seulement par exemple le 3eme element du tableau cree par explode.
Le passage de php a delphi ne se fait pas sans difficultés et est quelque peu deroutant parfois et pour moi precisement dans ce cas...
merci de votre aide
cs_arthur07 Messages postés 4 Date d'inscription vendredi 1 août 2003 Statut Membre Dernière intervention 27 février 2004
27 févr. 2004 à 08:05
Très pratique ces fonctions. :)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.