新增JS和PHP,并修改幻灯片脚本以动态显示三个不同目录的内容。简单地说,让事情变得简单。将数组索引号从PHP传递到Javascript
一个问题我已经是我修改脚本中使用下面的静态代码来填充JavaScript数组:
variableslide[0]=['team_a/blank.jpg']
variableslide[1]=['team_a/ford.jpg']
variableslide[2]=['team_a/futuristic.jpg']
variableslide[3]=['team_a/lambo.jpg']
我的PHP代码工作至今动态枚举的目录,然后通过结果在为Javascript:
<?php
// Header("content-type: application/x-javascript");
$team_a = array();
$team_b = array();
$team_c = array();
foreach (new DirectoryIterator('team_a') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_a[] = "team_a".'/'.$fileInfo->getFilename();
}
foreach (new DirectoryIterator('team_b/') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_b[] = $fileInfo->getFilename();
}
foreach (new DirectoryIterator('team_c') as $fileInfo) {
if($fileInfo->isDot() || !$fileInfo->isFile()) continue;
$team_c[] = $fileInfo->getFilename();
}
?>
<script type="text/javascript">
var variableslide = <?php echo json_encode($team_a, JSON_UNESCAPED_SLASHES)
?>
在Chrome当我“检查元素”,同时运行完整的代码,我可以看到,文件名被传递到JavaScript语法,但是,缺少0,1,2,3, 4等。我只能以文件路径结束。这里的结果:
var variableslide = ["team_a/blank.jpg","team_a/ford.jpg","team_a/futuristic.jpg","team_a/lambo.jpg"];
我一直在周围的Googling是如何获得VAR variableslide阵列读取,这样的:
variableslide[0]=['team_a/blank.jpg']
variableslide[1]=['team_a/ford.jpg']
拉数组索引号和PHP文件名和填充在JS中的variableslide数组,因此它读取与上面相同。当我从PHP脚本中输入print_r时,它会正确显示索引号和文本。任何人都可以帮我解决这个问题!谢谢!
这些都是等效的阵列(保存,你在包装多个阵列的阵列,为什么?)。 '[''','..',..]'符号只是紧凑的文字符号。 – deceze 2015-02-10 13:51:24
只需按正常方式,variableslide [0] 或在Chrome控制台中输入variableslide [0]; 它应该返回team_a/blank.jpg或数组的第一个元素 – 2015-02-10 13:55:26