Цитата из PHP превращается в 'в JavaScript - PullRequest
0 голосов
/ 28 января 2019

Мне нужен определенный формат, который я создаю в своем php, и который затем отправляется в мой вид и javascript (с использованием symfony, но это не проблема symfony).

Проблема указана вtitle: ' из строки преобразуется в мои js, и я не хочу, чтобы оно преобразовывалось

Вот как это выглядит

Php сторона

        case "01":
            $dynamic_month="['Février ".$previous_year."','Mars ".$previous_year."','Avril ".$previous_year."','Mai ".$previous_year."
            ','Juin ".$previous_year."','Juillet ".$previous_year."','Août ".$previous_year."','Septembre ".$previous_year."','Octobre 
            ".$previous_year."','Novembre ".$previous_year."','Décembre ".$previous_year."','Janvier ".$year."']";
            break;

Это строит строку с чем-то вроде ['Month Year','NextMonth Year'] (это то, что печатает var_dump.

Но в моем javascript (chart.js внутри представления ветки). ' заменены.

var chart = new Chart(ctx, {
                // The type of chart we want to create
                type: 'line',

                // The data for our dataset
                data: {
                    labels: {{ dynamic_month }},
                    datasets: [{
                        label: "Connexion / mois",
                        backgroundColor: 'rgb(255, 99, 132)',
                        borderColor: 'rgb(255, 99, 132)',
                        data: connectedByMonth,
                    }]
                },

                // Configuration options go here
                options: {}
            });

Проблема в строке

labels: {{ dynamic_month }}

, которая заменяется однажды скомпилированной этой

labels: ['Février 2018','Mars 2018', et caetera et caetera

Спасибо за вашу помощь.

Ответы [ 2 ]

0 голосов
/ 29 января 2019

Вы устанавливаете переменную dynamic_month на стороне PHP, но используете ее в Javascript;вам нужно заменить:

labels: {{ dynamic_month }},

на

labels: {<?php echo $dynamic_month ?>},

HTH

0 голосов
/ 28 января 2019

взгляните на эти экранирующие кавычки: Экранирующие кавычки в PHP

, если это не сработает, вы всегда можете сделать str.replace после факта и правильно преобразовать его обратно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...