IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Extraire une partie d'une chaine de caracteres


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Extraire une partie d'une chaine de caracteres
    Bonjour,

    Afin de renseigner le champ "Company" d'un flux XML, je cherche la commande php qui permettrait d'extraire le nom de la société qui est inséré dans le champ 'description' de la table 'info' dans mysql.

    Le champ "description" a cette forme: Societe: Capito, Localisation: Suresnes, forte de plus de 21000 salariés ...

    Le champ "Company" de mon flux est aujourd'hui $this->addCData('company', 'Non renseigné'); Non renseigné étant la valeur par défaut.
    Je souhaite remplacer 'Non renseigné' par ce qui se trouve entre 'societe' et la ','

    Pour exemple, le champ "description" de la table 'info' est écrit comme cela:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->addCData('description', $info->getdescriptionAsHtml());
    J'ai bien trouvé des commandes de type "eregi" mais je ne sais pas comment la syntaxer. Peut être existe t'il d'autres commandes.

    Merci de votre aide,

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il y a diverses méthodes pour aborder la chose, c'est quand même dommage que tu n'aies même pas une tentative à nous proposer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <?php
    $chaine = "Societe: Capito, Localisation: Suresnes, forte de plus de 21000 salariés";
     
    // avec une expression régulière
    preg_match('#Societe: (.+), Localisation#', $chaine, $matches);
    echo $matches[1];
     
    // avec un découpage fixe
    echo substr($chaine, 9, strpos($chaine,',')-9);
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Extraire un texte d'une chaine de caracteres
    Merci Sabotage,
    Je suis totalement débutant et j'essaie de modifier le code d'un fichier xml qui fait appel à une bdd mysql pour générer un flux.
    J'avais bien pensé à ce qui suit pour renseigner le champ "company" mais cela ne fonctionne pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $description = $job->getdescriptionAsHtml()
    $pos1=strpos($description,"Societe: ");  //cherche la position du mot "Societe: " dans la chaine
    $pos1=$pos1+9; //on ajoute le nombre de caractère pour trouver le 1er caractère du nom de la société
    $pos2=strpos($description,",");  //cherche la position de la virgule après le nom de la Société dans la chaine
    $longueur=$pos2-$pos1;  //on calcul le nombre de caractère du nom de la société
    $societe=substr($description,$pos1,$longueur); // on extrait le nom de la société
    $this->addCData('company', $societe);
    Aurais tu une idée de ce qui ne fonctionne pas?

    Merci d'avance de ton aide

  4. #4
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 382
    Points : 10 410
    Points
    10 410
    Par défaut
    Pendant le debug fais afficher ta variable $societe pour voir si elle est bien renseignée comme attendu.

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 385
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 385
    Points : 5 733
    Points
    5 733
    Billets dans le blog
    1
    Par défaut
    Je me rappelle si en PHP les ; en fin d'instruction sont obligatoires ou non ; y en a pas à la ligne 1...

    Un débutant qui fait du code objet, c'est un peu surprenant...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

    Si la discussion est résolue, merci de cliquer sur le bouton

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/04/2013, 15h57
  2. [RegEx] Retourner une array sur une partie de la chaine
    Par absurdsystem dans le forum Langage
    Réponses: 2
    Dernier message: 25/04/2010, 16h03
  3. masquer une partie d'une vidéo par une banniere
    Par lezabour dans le forum Général Conception Web
    Réponses: 1
    Dernier message: 16/10/2006, 16h47
  4. copier une partie d'une image vers une autre
    Par gregcat dans le forum Langage
    Réponses: 1
    Dernier message: 14/04/2006, 13h39
  5. comparaison d une partie de la chaine de caractere
    Par sneb5757 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/12/2005, 15h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo