her zaman benim için bir soruydu o dizi benim php komut tanımlanır iken nasıl ben javascript bir dizi değeri kullanabilirsiniz
Örneğin bir dosyadan bazı değerleri okuma düşünün ve javascript kullanabilirsiniz.
Bunu yapmak için ur plan nedir?
Sen güvenle JavaScript doğrudan kullanabileceğiniz bir JSON nesnesi dönmek için json_encode
a> işlevini kullanabilirsiniz:
<?php
$phpArray = array("foo", "bar", "baz");
//....
?>
<script type="text/javascript">
var jsArray = <? echo json_encode($phpArray); ?>;
</script>
Çıkışlar:
<script type="text/javascript">
var jsArray = ["foo","bar","baz"];
</script>
Bu böyle bir şey?
<?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";
?>
And perhaps for more info:
http://www.scratch99.com/2008/03/creating-javascript-array-dynamically-from-php-array/
JSON, sizin tercihinizdir bazı PHP 5.x sürümünden beri, PHP bir işlev içerir json_encode()
.
<script type="text/javascript">
var arr = <?php echo json_encode($php_array); ?>
</script>
Her zamanki gibi, bazı güzel adamlar eski PHP sürümü için json_encode () işlevlerini yazdı, checkout the comments on php.net.
Lütfen PHP dizi bir şekilde JavaScript maruz gerekir. Eğer ilk sayfa yük JS mevcut dizisi istiyorsanız, bunu şöyle yapacağım:
<script type="text/javascript">
myJSArray = <?php echo function_that_generates_array_in_js_syntax($myPHPArray); ?>;
</script>
Değişken ilk sayfa yük oluşturulmuş olması gerekmez ise, benzer bir şey, ama bir AJAX çağrısını kullanabilirsiniz. Sadece PHP komut JS için biçimlendirilmiş dizi ile cevap var, ve JS değişkene çağrısının sonucu depolamak.