Maison > interface Web > js tutoriel > Comment transmettre efficacement un tableau PHP à une fonction JavaScript pour manipulation ?

Comment transmettre efficacement un tableau PHP à une fonction JavaScript pour manipulation ?

Barbara Streisand
Libérer: 2024-11-08 04:46:01
original
403 Les gens l'ont consulté

How do I effectively pass a PHP array to a JavaScript function for manipulation?

Tableau PHP transmis à la fonction JavaScript

La manipulation des tableaux PHP en JavaScript est une exigence courante. Ce guide présente un moyen efficace de transmettre des tableaux PHP aux fonctions JavaScript à l'aide de JSON.

Problème :

J'essaie de passer un tableau de PHP à une fonction en JavaScript, mais je rencontre un problème. L'exemple de code est le suivant :

<?php
$au = [];
for ($counter = 0; $counter < count($au); $counter++) {
    switch ($au[$counter]->id) {
        case pageID.'/insights/page_active_users/day':
            $day[] = $au[$counter]->value;
        break;
        (...)
    }
}
?>

<script>
drawChart(600/50, '<?php echo $day; ?>', <?php echo $week; ?>, <?php echo $month; ?>, <?php echo createDatesArray(cal_days_in_month(CAL_GREGORIAN, date('m',strtotime('-1 day')), date('Y',strtotime('-1 day')))); ?>);
</script>
Copier après la connexion

Solution de contournement :

Utilisez JSON pour encoder le tableau PHP en chaîne et transmettez-le à une fonction JavaScript. Le format d'encodage est le suivant :

echo json_encode($day);
Copier après la connexion

En JavaScript, utilisez la méthode JSON.parse() pour analyser la chaîne JSON reçue :

var obj = JSON.parse('<?php echo json_encode($day); ?>');
Copier après la connexion

Le code modifié est le suivant :

<?php
$au = [];
for ($counter = 0; $counter < count($au); $counter++) {
    switch ($au[$counter]->id) {
        (...)
    }
}
?>

<script>
drawChart(600/50, <?php echo json_encode($day); ?>, <?php echo json_encode($week); ?>, <?php echo json_encode($month); ?>, <?php echo createDatesArray(cal_days_in_month(CAL_GREGORIAN, date('m',strtotime('-1 day')), date('Y',strtotime('-1 day')))); ?>);
</script>
Copier après la connexion

Cette approche garantit que les valeurs du tableau PHP sont transmises aux fonctions JavaScript de manière sûre et fiable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal