PHP me dit que le fractionnement est obsolète, quelle est la méthode alternative que je devrais utiliser?
92
explode
est une alternative. Cependant, si vous vouliez diviser par une expression régulière , l'alternative est à la preg_split
place.
explode
n'est pas l'alternative, car elle n'effectue pas la même fonction quesplit
, c'est-à-dire: diviser une chaîne par une expression régulière . Pour cela, utilisezpreg_split
.split
méthode n'accepte pas toujours les expressions régulières. Dans .NET, Python, les méthodesString.Split()
/str.split()
n'acceptent qu'une chaîne littérale fixe comme aiguille. Ainsi,explode
est correct. Pour ceux qui viennent de Java, JavaScript, Ruby,preg_split
pourrait s'avérer la solution.split
est déconseillée car elle fait partie de la famille des fonctions qui utilisent les expressions régulières POSIX; cette famille entière est obsolète au profit despreg_*
fonctions PCRE ( ).Si vous n'avez pas besoin de la fonctionnalité d'expression régulière,
explode
c'est un très bon choix (et aurait été recommandésplit
même si cela n'était pas obsolète), si d'un autre côté vous devez utiliser des expressions régulières, l'alternative PCRE est tout simplementpreg_split
.la source
preg_split
si vous avez besoin de fractionner par des expressions régulières.str_split
si vous devez diviser par caractères.explode
si vous avez besoin de diviser par quelque chose de simple.Aussi pour l'avenir, si vous voulez savoir ce que PHP veut que vous utilisiez si quelque chose est obsolète, vous pouvez toujours consulter la fonction dans le manuel et il vous indiquera des alternatives.
la source
Je veux clarifier ici qui
preg_split();
est loin de là maisexplode();
peut être utilisé de la même manière quesplit();
Voici la comparaison entre
split();
et l'explode();
utilisationComment split () a-t-il été utilisé
URL: http://php.net/manual/en/function.split.php
Comment explode () peut être utilisé
URL: http://php.net/manual/en/function.explode.php
Voici comment nous pouvons l'utiliser :)
la source
Vous pouvez utiliser la fonction plus simple preg_match à la place, elle est meilleure et plus rapide que toutes les autres.
Production:
Get this var
la source
Oui, j'utiliserais exploser ou vous pourriez utiliser:
preg_split
Quelle est la méthode conseillée avec PHP 6. Documentation preg_split
la source
Si vous souhaitez diviser une chaîne en mots, vous pouvez utiliser explode () ou str_word_count ().
la source
J'ai eu le même problème, mais mon code doit fonctionner à la fois sur PHP 5 et PHP 7.
Voici mon morceau de code, qui a résolu ce problème .. Entrez une date au format dmY avec l'un des délimiteurs "/. -"
la source