繁体   English   中英

从Foreach循环中获取所有值,并将它们放在PHP中以逗号分隔的数组中

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM