Php to js - conversion d'une variable en php vers javascript

Soyez le premier à donner votre avis sur cette source.

Snippet vu 32 120 fois - Téléchargée 27 fois

Contenu du snippet

string php2js (mixed var)

la fonction va convertir la variable passée en paramètre en une chaine qui correspond au code JavaScript de la variable.

[Exemple]
<?php
$tab = array(1, 2, array(3, 4), 5, "salut", True);
$js = php2js($tab); // [1,2,[3,4],5,'salut',true]
?>
<script language="JavaScript">
var tab = <?php echo $js; ?>;
alert(tab);
</script>

Source / Exemple :


function php2js ($var) {
    if (is_array($var)) {
        $res = "[";
        $array = array();
        foreach ($var as $a_var) {
            $array[] = php2js($a_var);
        }
        return "[" . join(",", $array) . "]";
    }
    elseif (is_bool($var)) {
        return $var ? "true" : "false";
    }
    elseif (is_int($var) || is_integer($var) || is_double($var) || is_float($var)) {
        return $var;
    }
    elseif (is_string($var)) {
        return "\"" . addslashes(stripslashes($var)) . "\"";
    }
    // autres cas: objets, on ne les gère pas
    return FALSE;
}

A voir également

Ajouter un commentaire

Commentaires

phvr
Messages postés
2
Date d'inscription
mardi 29 avril 2003
Statut
Membre
Dernière intervention
23 juin 2003
-
Excellent code qui fonctionne très bien, de plus l'exemple (pour une fois ;-) ) est très clair.
bob3000
Messages postés
406
Date d'inscription
mardi 7 mai 2002
Statut
Membre
Dernière intervention
2 octobre 2004
-
super bon!! bravo!
[GANDALF
Messages postés
1
Date d'inscription
lundi 27 octobre 2003
Statut
Membre
Dernière intervention
27 avril 2004
-
Excellent code ! Excellent code ! Et encore excellent code ! C'est tout con, mais je n'avais jamais pensé à

var variable = "<?echo $variable?>"

pour récupérer une variable php en javascript. Depuis le temps que je cherchais comment faire...
atlahack
Messages postés
1
Date d'inscription
dimanche 6 juin 2004
Statut
Membre
Dernière intervention
16 juin 2004
-
Bonjour a tous
Merci pour ce code => super.
J'ai malgré tout une petite question, peu t'on faire l'inverse, et si oui, comment?
Merci d'avance.
naholyr
Messages postés
28
Date d'inscription
dimanche 12 novembre 2000
Statut
Membre
Dernière intervention
11 septembre 2006
-
L'inverse est un non-sens puisque PHP travaille en amont de javascript. Envoyer des données à PHP nécessite l'appel d'une page, et donc se fera via une relocation (document.location.href="script.php?var=valeur" par exemple).

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.