php ve javascript arasında var transfert

3 Cevap php

Ben php bir dir listesini almak istiyveyaum

glob("*.jpg");

veya

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

bu yüzden böyle bir javascript bu diziyi göndermek ister (slaytlar = $ listedfiles)

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

Bunu yapmak için en iyi yolu nedir?

3 Cevap

json_encode Bunun için senin arkadaşın. Hiçbir döngü gereklidir. O sonra sadece PHP kullanarak js dosyasına echo bir saf json nesne dize dönecektir. Örnek:

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

her zaman sadece bir javascript için bunun bir yankı yapabilirsiniz:

echo ' <script type="text/javascript"> 
var filelist = [];
';

foreach($listedfiles as $file)
{
echo " filelist[] = $file; ";
}

echo "</script>";

PHP ve Javascript doğrudan etkileşim olamaz ancak, bunu yapabilirsiniz PHP çıktı JavaScript çıktı düz metin veya HTML olabilir aynı şekilde:

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

  // ... do js stuff
</script>

Temelde, PHP diziyi oluşturduktan sonra, size çıkış JS kod javascript aynı dizi oluşturmak için.