Передайте массив PHP в Javascript внутри строковой переменной (HTML Injection)

Я знаю, что это общий вопрос, но я борюсь с этим!

Я создаю HTML из файла PHP, поэтому каждый HTML и Javascript передаются как переменная ($string). Это часть моего кода, где мне нужно передать значения $objects_list в переменную javascript objects_list:

    $string = '<script type="text/javascript">
                function open_project(id)
                {
                    var objects_list = '. json_encode($objects_list) .';
                    console.log(objects_list.lenght);
                }
            </script>';

Дело в том, что console.log печатает не определено. Как я могу решить это? Если я удаляю json_encode, я получаю ошибку для преобразования массива в строку.


РЕДАКТИРОВАТЬ:

Просто заметил, если я console.log(objects_list[5]Например, он печатает правильное значение, так что проблема на самом деле с objects_list.lenght Похоже.

1 ответ

Решение

Орфографическая ошибка:

console.log(objects_list.lenght);

Должно быть

console.log(objects_list.length);
Другие вопросы по тегам