[英]Getting all values from Foreach loop and placing them in a comma separated array in PHP
好吧,这可能真的很简单,我只是想不通! 我需要从PHP的foreach循环中的数组中获取值,并将其传递给jquery的数组。 这是我的代码:
foreach ($results as &$value) {
$vall[] = $value.", ";
}
$result = count($results);
echo $result;
print_r($vall);
这会打印出一个普通数组= Array([0] => one.jpg,[1] => two.jpg,[2] => three.JPG,[3] => four.JPG,)
我需要它来创建这样的数组:one.jpg,two.jpg,three.JPG,fourth.JPG(仅包含值),然后需要将其传递给我的jquery:
$(".next").click(function(){
var p = [<?php echo $vall ?>];
var start = id;
var next = p[($.inArray(start, p) + 1) % p.length];
var prev = p[($.inArray(start, p) - 1 + p.length) % p.length];
$(".cont").append(next);
$(".cont").append(prev);
});
**我还需要取消逗号的最后一个值。完成此操作的任何帮助或替代方法将不胜感激。
如果您尝试呈现要在JavaScript中使用的数组,并且使用的是PHP 5.2.0或更高版本,则可以使用json_encode()
。
如果您只想以您描述的格式打印数组,而不必担心转义JavaScript特殊字符,则可以使用implode()
。
为什么不走更简单的路线并使用json_encode()
?
取代这个...
[<?php echo $vall ?>]
有了这个....
<?php echo json_encode($results); ?>
您可以摆脱整个foreach循环。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.