var transfert между php и javascript

Мне нравится, если вам будет предоставлен каталог в php

glob("*.jpg"); 

или

 $dir = '.'; //requested directory to read $notthat = array('.', '..'); //what not to include $listedfiles = array_diff(scandir($dir), $notthat); // removed what not to include 

поэтому мне нравится отправлять этот массив на такой javascript (slides = $ перечисленные файлы)

 function startSlideshow(slides) { .. do something..} 

Каков наилучший способ сделать это?

Related of "var transfert между php и javascript"

json_encode – ваш друг. Цикл не нужен. Он вернет чистую строку объекта json, которую вы можете просто эхо в ваш js-файл с помощью PHP. Пример:

 var slides = <?php echo json_encode( $filelistarray );?> function startSlideshow(slides) { .. do something..} 

вы всегда можете просто откликнуться на javascript:

 echo ' <script type="text/javascript"> var filelist = []; '; foreach($listedfiles as $file) { echo " filelist[] = $file; "; } echo "</script>"; 

PHP и Javascript не могут напрямую взаимодействовать, однако вы можете вывести Javascript из PHP так же, как вы можете вывести простой текст или HTML:

 <script type="text/javascript"> var slides = []; <?php foreach ($listedfiles as $file) { echo "slides[] = '" . addslashes($file) . "';\n"; } ?> // ... do js stuff </script> 

В принципе, после создания вашего массива в PHP вы выводите JS-код для создания того же массива в javascript.