javascript - 将php数组值循环到html数据属性

标签 javascript php html arrays

我有一个数组 $myArray

Array ( 

[0] => Array (
        [Number] => 039
        [Fruit] => Apple
        [Level] => Low
        [Names] =>
            Array (
                [6] => Name 1
                [7] => Name 2
                [19] => Name 3
                [25] => Name 4
        )
        )
[0] => Array (
        [Number] => 007
        [Fruit] => Plum
        [Level] => High
        [Names] =>
            Array (
                [3] => Name 1
                [5] => Name 2
                [9] => Name 3
                [11] => Name 4
                [12] => Name 5
                [19] => Name 6
                [22] => Name 7
                [30] => Name 8
        )
        )
 [0] => Array (
        [Number] => 486
        [Fruit] => Grape
        [Level] => Medium
        [Names] =>
            Array (
                [6] => Name 1
                [15] => Name 2

        )
        )

我想循环遍历这个数组以获取所有名称集,然后我稍后将通过 javascript 在 html 中显示它们

for($index=0; $index < count($myArray); $index++){


    $name = array_values(array_filter($myarray[$index]["Name"]));


    <button type="button" class="open-my-modal btn btn-primary" 
        data-names="'.$name.'"

Names 的输出如下

Array ( 
   [0] => Name 1
   [1] => Name 2
   [2] => Name 3
   [3] => Name 4
  )
Array ( 
   [0] => Name 1
   [1] => Name 2
   [2] => Name 3
   [3] => Name 4
   [4] => Name 5
   [5] => Name 6
   [6] => Name 7
   [7] => Name 8
   [8] => Name 9
  )
Array ( 
   [0] => Name 1
   [1] => Name 2
)

稍后在我的代码中,我想循环每组数字并将它们打印到屏幕上。例如循环遍历第一个数组并打印名称 1-4。

我收到错误

Notice: Array to string conversion

关于 data-names="'.$name.'"

我如何传递名称数组,以便稍后可以在 html 中调用它们。

另外:我正在一个巨大的 php 函数中编写此内容,因此 php 写得很简单,而 html 则用引号引起来。屏幕上显示的任何内容都会附加到返回变量中。

最佳答案

您收到的错误表明您正在尝试像处理字符串一样连接数组。 你做不到。

您可以使用implode将数组连接到带有deilimeter的字符串(用于java脚本使用)

echo '<button data-number="'.implode(',', $numbers).'">Button</button>'

它会产生这样的 HTML:

<button data-number="1,2,3,4">Button</button>

你可以用java脚本分割它并循环数字

implode Documentation

*编辑 如果您的数组包含四个数组,您将需要另一个循环将数组合并到一个数组

关于javascript - 将php数组值循环到html数据属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45270554/

相关文章:

javascript - 我怎样才能同时使用change和keyup

javascript - Vanilla JS 动画?

PHP - 类数组中带有括号的奇怪语法错误

javascript - 检测文件上传是通过拖动还是常规输入点击

javascript - 在 Data-toggle ="collapse"bootstrap 下默认打开 Navigation

html - 用垂直或水平线填充 div

javascript - jQuery 在另一个输入有值时禁用输入

javascript - 使用 jquery 检测某个类是否被单击

php - 获取mysql中的第二行直到最后一行

php - YouTube 链接不提供视频 ID