Question

Je suis en train de diviser un texte dans un tableau à l'aide d'exploser, mais pour une raison qui ne fonctionne pas lorsque le texte provient d'un formulaire ci-dessous.

Si je cours explode('|§|', 'qwe|§|asd|§|zxc'); je vais obtenir un tableau comme:

Array  
(  
    [0] => qwe  
    [1] => asd  
    [2] => zxc  
)  

et

Si ce texte d'entrée provient d'une forme comme définir:

<form method="post">
Input: <input type="text" name="query" size="50" value="qwe|§|asd|§|zxc"><input type="submit" value="Parse">
</form>

Je reçois le tableau suivant:

Array  
(  
    [0] => qwe|§|asd|§|zxc  
)  

Im deviner cela a à voir avec les paramètres ISO et que le texte dans le champ de requête »a été modifiée d'une certaine façon, mais je ne peux pas comprendre comment résoudre. Je l'ai essayé d'installer et d'autres <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" /> charsets, mais en vain.

Toutes les idées? Merci à l'avance.

Était-ce utile?

La solution

Je suis probablement trompé sur ce point, mais § peut être un caractère unicode, qui PHP ne supporte pas encore. Ainsi, il peut y avoir quelques problèmes lors du transfert de la forme au script.

Avez-vous essayé de changer à quelque chose de plus ... normal? Comme si vous avez qwe|~|asd|~|zxc à la place, ou qwe|+~+|asd|+~+|zxc peut-être si vous êtes préoccupé par ce que quelqu'un entrerait

Autres conseils

Juste une idée: Le signe § est probablement être converti en format URL. Essayez urldecode () la première chaîne.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top