2015-03-25 74 views
1

我试图创建hrefs链接的php数组。如何把hrefs放到php数组中

然而,当进出口运行的网页即时得到错误信息:

未定义抵消:0

而且我想知道如何解决这个问题,或者是有任何其他方式如何将“hrefs”放入数组中。

阵列代码:

<?php 

    $links = array (
     "a" => "<a href='variabletypes.php'>link</a>", 
     "b" => "<a href='variabletypes.php'>link</a>",`` 
     "c" => "<a href='variabletypes.php'>link</a>",; 
     "d" => "<a href='variabletypes.php'>link</a>",; 
     "e" => "<a href='variabletypes.php'>link</a>", 
    ); 

    for($i=0; $i<sizeof($links);$i++)`` 
     echo $links[$i]; 

?>; 
+1

那么你有一个关联数组与字母键,例如, 'a,b,c',但你尝试用数字键来访问数组,例如'0,1,2,3',所以这显然不起作用。所以我建议你使用foreach循环,你可以在手册中阅读更多关于它的内容:http://php.net/manual/en/control-structures.foreach.php – Rizier123 2015-03-25 10:49:42

+0

谢谢,它非常有用。我得到了它的工作。然而,只是想知道是否有可能循环项目之一,当我点击按钮。对于实施例此代码循环中的所有项目中一次,但希望,他们将通过点击按钮环被环<?PHP的 $链接=阵列( “一个” =>“Var”, “B” =>“Cond” , “c”=>“Arrays”, ); 的foreach($链接为$循环) 回声$循环。 “
”; ?> VORAS9319 2015-03-25 11:44:28

+0

你可以做到这一点,但你必须保存在session您的阵列,以保持它在新的请求或做它用AJAX。 – Rizier123 2015-03-25 11:46:04

回答

1

尝试与此:

<?php 
    $links = array ("a" => "link", "b" => "link", "c" => "link", "d" => "link", "e"=>"link"); 
    foreach ($links as $link) 
     echo $link; 


?> 
+0

感谢它的工作原理:) – VORAS9319 2015-03-25 10:55:39

+1

对于OP和其他读者的解释将是有益的,为什么OP必须使用此代码以及此代码的作用 – Rizier123 2015-03-25 11:09:16

0

其ASSOC阵列;)

使用foreach迭代这就是阵列的类型。

要重复键和值u可以使用:

foreach($links as $key => $val) { 
    echo $key.' - '.$val; // a - <a href=... 
} 

或迭代只值:

foreach($links as $str){ 
    echo $str; //<a href=... 
} 
+1

OP和其他读者的解释将有所帮助,为什么OP必须使用此操作代码和这段代码的作用 – Rizier123 2015-03-25 11:09:04

0

你有这样的关联数组:

$links = array (
    "a" => "<a href='variabletypes.php'>link</a>", 
    "b" => "<a href='variabletypes.php'>link</a>",`` 
    "c" => "<a href='variabletypes.php'>link</a>",; 
    "d" => "<a href='variabletypes.php'>link</a>",; 
    "e" => "<a href='variabletypes.php'>link</a>", 
); 

你不需要;和`在数组定义中。另一个问题是:

for($i=0; $i<sizeof($links);$i++)`` 
    echo $links[$i]; 

你不需要在循环中。此外,您尝试使用数字索引,但是,您的索引是字符串。尝试使用foreach循环代替:

foreach ($links as $key => $value) { 
    echo $value; 
    //note that $key will hold your index. It is optional, but it is good to know it is there 
} 
+0

感谢您的回答。 – VORAS9319 2015-03-25 11:36:29

+0

只是想知道如何按下按钮来显示循环? – VORAS9319 2015-03-25 11:37:13

+0

这是一个不同的故事。您的按钮显示在浏览器中,当您单击它时,您需要向服务器发送AJAX请求。回应将包含您回应的所有内容。观看一些教程,他们会帮助你。在YouTube上搜索AJAX;) – 2015-03-25 11:49:03