Conversion variable $_POST en String

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Conversion variable $_POST en String

Re: Conversion variable $_POST en String

par Dr@ke » 11 mars 2010, 23:00

Cela m'évite un test supplémentaire is_string(), et simplifie les opérations ensuite, ne m'occupant plus du type ensuite.
exemple:
Je peux ensuite appliquer les fonctions qui ne fonctionnent pas si la variable est un array()...
Disons que dans certaines conditions, cela simplifie le traitement.
En une ligne, l'affaire est réglée...

Re: Conversion variable $_POST en String

par Mercantos » 11 mars 2010, 22:51

$var = (string) $_POST['var'];
Je ne vois pas trop l'intérêt de la conversion en string. Avec PhP, le typage des variable n'est vraiment pas contraignant. Pourquoi vouloir le caster en string ?

Re: Conversion variable $_POST en String

par Dr@ke » 11 mars 2010, 22:49

Vi ok merci pour la première partie de ma question, en effet j'oublie toujours les accolades...

Sinon pour la deuxième partie:
$var = (string) $_POST['var'];
Merci :wink:

Re: Conversion variable $_POST en String

par Mercantos » 11 mars 2010, 22:44

Bonjour,

J'imagine que tu veux créer une chaine plus "complexe" que "$_POST['var']" ? Parce que sinon les guillemets ne sont pas vraiment utiles.

Pour utiliser une variable entre guillemets elle doit être "simple" (en gros pas un tableau ni un objet). Pour employer le terme savant ça doit être un scalaire. En effet, php ne peut pas savoir si le premier crochet fait partie de la variable ou de la chaîne. Imagine que je veuille écrire "Pomme[50€ le kilo]" (oui je sais, c'est pas donné) avec le code suivant :
<?php
$fruit = 'Pomme'; 
echo "$fruit[50€ le kilo]";
?>
Dans ce cas le crochet ne doit pas faire partie de la variable.

La solution est d'utiliser les accolades :
<?php
$var = "{$_POST['var']}";
?>
Mais personnellement je te conseille cette méthode :
<?php
$var = 'début de la chaîne '.$_POST['var'].' fin de la chaîne';
?>
L'utilisation de simple quotes et du point est plus performante il parait (parce que php ne doit pas analyser les chaînes à la recherche de potentielles variables.

En espérant t'avoir un peu éclairé.

Conversion variable $_POST en String

par Dr@ke » 11 mars 2010, 22:26

Bonjour,

Pourquoi ceci n'est pas possible?
<?php
$var = "$_POST['var']";
?>
Car, obligé de faire:
<?php
$var = $_POST['var'];
$var = "$var";
?>
Ensuite, est-il possible de le faire en une seule ligne?

Merci par avance :wink: