Как использовать значение массива от php до javascript?

для меня всегда был вопрос, как я могу использовать значение массива в javascript, пока этот массив определен в моих php-скриптах

Например, рассмотрим возможность чтения некоторых значений из файла и использования его в javascript.

что ур планирует сделать так?

Solutions Collecting From Web of "Как использовать значение массива от php до javascript?"

Вы можете использовать функцию json_encode , чтобы безопасно вернуть объект JSON, который вы можете использовать непосредственно в JavaScript:

 <?php $phpArray = array("foo", "bar", "baz"); //.... ?> <script type="text/javascript"> var jsArray = <? echo json_encode($phpArray); ?>; </script> 

Выходы:

 <script type="text/javascript"> var jsArray = ["foo","bar","baz"]; </script> 

Что-то вроде этого?

 <?php # create PHP array: $php_array = array("one", "two", "three"); # "pass" php array to JS array: echo "<script language='JavaScript'>\n"; echo "var js_array = new Array();\n"; $ix = 0; foreach($php_array as $key => $value) { echo "js_array[$key] = $value;\n"; } # Rest of JavaScript..... echo "</script>\n"; ?> 

И, возможно, для получения дополнительной информации:
http://www.scratch99.com/2008/03/creating-javascript-array-dynamically-from-php-array/

JSON – ваш выбор, так как версия PHP 5.x, PHP содержит функцию json_encode() .

 <script type="text/javascript"> var arr = <?php echo json_encode($php_array); ?> </script> 

Как обычно, некоторые хорошие ребята записывают функции json_encode () для более старой версии PHP, проверяют комментарии на php.net .

Массив в вашем PHP должен каким-то образом подвергаться JavaScript. Если вы хотите, чтобы массив был доступен JS при начальной загрузке страницы, вы можете сделать это следующим образом:

 <script type="text/javascript"> myJSArray = <?php echo function_that_generates_array_in_js_syntax($myPHPArray); ?>; </script> 

Если переменную не нужно создавать на начальной загрузке страницы, вы можете сделать что-то подобное, но использовать вызов AJAX. Просто попросите свой PHP-скрипт ответить на массив, отформатированный для JS, и сохраните результат вызова в вашей переменной JS.

Вариант PHP для JS без расширения json, используя join / implode и no loop construct:

 <?php $array= array('one','two','three'); $js_array= '["'. join('","', $array) .'"]'; ?> <script type="text/javascript"> var js_array= <?php echo $js_array;?>; alert(js_array); </script>