在PHP循环内调用js函数,同时将php变量作为参数传递给函数之一

乔治·安东诺夫(Georgi Antonov)

好的,所以创建了两个javascipt函数,我想在php循环中调用它们,同时将php变量作为参数传递给第二个函数

addElements($filePath)

这个filePath变量必须是内部循环中的最后一个变量,我想这样写不会从第一个循环中获得第一个变量

这是我想要的以及到目前为止已写的内容:

                <script>                
                <?php foreach( glob( 'posts/*' ) as $filePath ){
                        //createPost(); call js function declared in header
                        foreach( glob( $filePath.'/*' ) as $filePath ){
                        //addElements($filePath) call second hs function declared in header here i pass the last $filePath from the second loop as parameter
                        }

                }?>
              </script>

再次尝试,但仍然行不通

<script>                
                        <?php foreach( glob( 'posts/*' ) as $filePath ){
                                //createPost(); call js function declared in header
                                echo 'createPost()';
                                foreach( glob( $filePath.'/*' ) as $filePath ){
                                //addElements($filePath) call second hs function declared in header here i pass the last $filePath from the second loop as parameter
                                echo 'addElements('.$filePath.')';
                                }

                        }?>
斯特凡

PHP仅在服务器端执行,因此您不能拥有执行javascript函数的PHP循环(javascript =客户端)。但是,您可以在服务器上生成javascript代码,它将在客户端执行。

因此,简单的解决方案是编写如下代码:

<script>                
  <?php 
  foreach( glob( 'posts/*' ) as $filePath ){
    echo 'createPost();'; // call js function declared in header
    foreach( glob( $filePath.'/*' ) as $filePath ){
      echo 'addElements("'.$filePath.'");'; // call second hs function declared in header here i pass the last $filePath from the second loop as parameter
    }
  }
  ?>
</script>

它将生成如下内容:

createPost();
addElements('filepathA');
addElements('filepathB');
addElements('filepathC');
createPost();
addElements('filepathD');
addElements('filepathE');
// ...

如您所见,这里没有循环。另一个解决方案是在服务器端创建数据数组,并使用json_encodephp函数获取可在客户端使用的javascript数据:

    <?php 
$results = [];
foreach( glob( 'posts/*' ) as $filePath ){
    $subDirs = [];
    foreach( glob( $filePath.'/*' ) as $filePath ){
        $subDirs[] = $filePath; 
    }
    $results[] = [
        'dir' => $filePath,
        'subDirs' => $subDirs
    ];
}
echo 'var data = ' . json_encode($results) . ';';
?>

现在,您有了一个可以照常使用的javascript数组:

for (var i = 0; i < data.length; i++){
    createPost();
    for (var j = 0; j < data[i].subDirs.length; j++){
         addElements(data[i].subDirs[j]);
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将jquery变量传递给php函数作为参数

来自分类Dev

将变量从PHP函数传递给JS

来自分类Dev

将php字符串作为参数传递给php脚本中调用的javascript函数

来自分类Dev

将数组作为单个参数传递给php函数

来自分类Dev

将php数组作为链接参数传递给ajax函数

来自分类Dev

如何从foreach循环php将更多参数传递给函数

来自分类Dev

PHP使用变量将多个参数传递给函数

来自分类Dev

将会话变量作为参数传递给onload()函数调用

来自分类Dev

php-将参数传递给函数

来自分类Dev

PHP:将变量传递给函数

来自分类Dev

将php变量传递给jQuery函数

来自分类Dev

将函数作为参数传递给函数

来自分类Dev

将函数作为参数传递给函数

来自分类Dev

JS按顺序执行函数,同时将下一个函数作为参数传递

来自分类Dev

传递列表作为函数的参数之一

来自分类Dev

将变量作为参数传递给VBA中的函数

来自分类Dev

如何将参数作为函数传递给变量?

来自分类Dev

将变量作为参数传递给 angularjs 中的 setInterval 函数

来自分类Dev

将参数传递给在PowerShell中的开关内调用的函数

来自分类Dev

无法将参数传递给循环内的函数调用

来自分类Dev

在PHP中,将变量声明为全局内部函数或将变量作为参数传递给函数有什么区别?

来自分类Dev

将PHP var传递给js函数

来自分类Dev

如何调用传递的函数(将函数ptr作为参数传递给函数)

来自分类Dev

将函数和参数作为参数传递给中间函数,然后调用命名函数

来自分类Dev

将数组变量作为参数传递给另一个函数

来自分类Dev

PHP从数组中提取值并传递给函数作为参数

来自分类Dev

通过参数将php变量传递给javascript函数PHP,JAVASCRIPT

来自分类Dev

将矩阵作为参数传递给函数

来自分类Dev

将函数作为参数传递给操作

Related 相关文章

  1. 1

    将jquery变量传递给php函数作为参数

  2. 2

    将变量从PHP函数传递给JS

  3. 3

    将php字符串作为参数传递给php脚本中调用的javascript函数

  4. 4

    将数组作为单个参数传递给php函数

  5. 5

    将php数组作为链接参数传递给ajax函数

  6. 6

    如何从foreach循环php将更多参数传递给函数

  7. 7

    PHP使用变量将多个参数传递给函数

  8. 8

    将会话变量作为参数传递给onload()函数调用

  9. 9

    php-将参数传递给函数

  10. 10

    PHP:将变量传递给函数

  11. 11

    将php变量传递给jQuery函数

  12. 12

    将函数作为参数传递给函数

  13. 13

    将函数作为参数传递给函数

  14. 14

    JS按顺序执行函数,同时将下一个函数作为参数传递

  15. 15

    传递列表作为函数的参数之一

  16. 16

    将变量作为参数传递给VBA中的函数

  17. 17

    如何将参数作为函数传递给变量?

  18. 18

    将变量作为参数传递给 angularjs 中的 setInterval 函数

  19. 19

    将参数传递给在PowerShell中的开关内调用的函数

  20. 20

    无法将参数传递给循环内的函数调用

  21. 21

    在PHP中,将变量声明为全局内部函数或将变量作为参数传递给函数有什么区别?

  22. 22

    将PHP var传递给js函数

  23. 23

    如何调用传递的函数(将函数ptr作为参数传递给函数)

  24. 24

    将函数和参数作为参数传递给中间函数,然后调用命名函数

  25. 25

    将数组变量作为参数传递给另一个函数

  26. 26

    PHP从数组中提取值并传递给函数作为参数

  27. 27

    通过参数将php变量传递给javascript函数PHP,JAVASCRIPT

  28. 28

    将矩阵作为参数传递给函数

  29. 29

    将函数作为参数传递给操作

热门标签

归档