Jump to content

Déduire un préfixe d'un champ (PHP)


Recommended Posts

Bonjour, 

J'utilise le module DPD.

Une fonctionnalité du module permet la mise à jour automatique des statuts de livraison, et l'import des n° de tracking.

De base, ce module se base sur la référence de commande pour gérer le flux. 

Pour des raisons interne de fonctionnement, je dois me baser sur un autre champ nommé "sagebl". 

J'ai donc modifier le code du fichier AdminDPDFrance.php comme tel :

else {
                                $internalref = $order->sagebl;
                            }

Mon souci : je ne dois prendre en compte qu'une partie du champ "sagebl", en supprimant un préfixe ("MAR-").

Savez-vous comment modifier le code pour déduire le préfixe "MAR-" ?

Merci,

 

 

Link to comment
Share on other sites

Bonjour,

Je ne maitrise pas encore le PHP.

J'ai tenté quelque chose qui n'a pas fonctionné : 

else {
                        $internalref = $order->substr("sagebl", 4, 0);
                    }

Savez-vous où se trouve l'erreur ?

Merci

Link to comment
Share on other sites

J'ai re-tenté avec une formule qui semblait plus logique que la première, mais qui n'a pas fonctionné non plus :

else {
                        $internalref = $order->substr("sagebl", -12);
                    }

Quelque chose m'échappe… 

Une aide svp ?

Edited by BestFlex (see edit history)
Link to comment
Share on other sites

7 hours ago, doekia said:

il faut quand même la lire un minimum la documentation !!!

et peut-être celle de la fonction str_replace  !

Lire une documentation, c'est une chose. Comprendre une fonction d'un langage non maitrisé en est une autre.

Link to comment
Share on other sites

15 hours ago, Eolia said:

Peut-être sur l'anglais^^

Allez, en français cela sera peut-être plus compréhensible pour lui: http://php.net/manual/fr/function.str-replace.php

Merci Eolia.

J’avais effectivement consulté cette version. 

D’après ma compréhension de la doc, il faut désigner le champ voulu puis, dans mon cas, conserver uniquement les 12 derniers caractères en utilisant « -12 » comme j’ai pu le citer ci-dessus.

La syntaxe ne semble pas bonne. 

Est-ce que la formule pointe  correctement vers le champ sagebl de la table order ? Est-ce un problème plus loin dans la fonction ? Je n’en pas vraiment la réponse.

Link to comment
Share on other sites

14 hours ago, doekia said:

Ah oui c'est vrai que c'était peut-être trop compliqué pour lui de cliquer sur la langue qu'il parle. Mais ça veux dire qu'il ne maîtrise pas non plus le clic alors

 

Très constructif. 

 

Link to comment
Share on other sites

Bah non, la fonction str_replace ne s'occupe pas du tout des positions, elle remplace toutes les occurrences trouvées par les caractères de remplacement.

$var = '12345_XX5zF';

$toto = str_replace('12345_', '', $var);

echo $toto;

Affiche: XX5zF

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...