PHP循环通过JSON多维数组并在按钮单击时加载数据

时间:2015-05-26 10:09:21

标签: php json loops click

基本上我使用一些自定义API从php调用中检索JSON内容。阵列都是社交帖子。我正在使用的代码在加载页面时立即显示所有代码。我想及时向他们展示10或20,根据我的需要,我使用PHP foreach循环将数据放在页面上。我想得到前10个索引(从[0][10])并设置一个按钮来加载下一个索引[11], [12], [13]...,让我们说时间为10(来自{每次点击都会{1}}到[11],从[20][21])。这可能吗?

JSON内容如下所示:

[30]

这是我使用的(简化)代码:

 Array
  (
    [comments] => Array
      (
        [0] => Array
          (
             [type] => instagram
             [author] => Rick B.
             [message] =>  #follow4follow #followme
             [authorImage] => https://image.load.here/image.jpg
          )

        [1] => Array
          (
             [type] => twitter
             [author] => John Tesla
             [message] => Welcome to the Fine Living
             [authorImage] => https://image.load.here/image.jpg
          )

       [2] => Array
          (
             [type] => facebook
             [author] => Rob Roy
             [message] => Buscando el perfect sunset! 
             [authorImage] => https://image.load.here/image.jpg
          )

       [...]

     [180] => Array
          (
             [type] => vine
             [author] => Joe Fox
             [message] => Bom dia insônia! #bomdia
             [authorImage] => https://image.load.here/image.jpg
          )
       )
    )

1 个答案:

答案 0 :(得分:1)

<?php

function doMyStuff()
{
    // Doing all your other stuff in here.. 
    $currentIndex = 30;
    getData($currentIndex);
}    

function getData(currentIndex) {
    $maxIndex = currentIndex + 10;
    for($x = $currentIndex; $x < maxIndex; $x++) {
        echo '<div class="'. $comment['content{$x}'] .'"><p>Content..'..'</p></div>';
    }

}

这可能是也可能不是你要找的,但基本上......用数组的当前索引传递getData函数,比如30 - getData(30);然后该函数将根据当前索引回显接下来的10个内容,并且最大索引比当前索引大10。

[&#39; content {$ x}&#39;]是将变量/对象直接插入字符串的简洁方法。