如何回显unique_array中的值?

时间:2013-03-30 02:27:42

标签: php arrays echo

所以我有一个注册表格的以下PHP代码:

 <?php
$entries = array(
0 => $_POST['signup_username'],
1 => $_POST['signup_email'],
2 => $_POST['signup_password']);

$entries_unique = array_unique($entries);
$entries_unique_values = array_values($entries_unique);

echo " <br />".$entries_unique_values. " ";
?>

......而且我意识到我的回声语法是错误的。如何在不为每个键分配变量的情况下回显我的数组的不同值(有很多原因可以解释为什么我不能这样做)?我也不想使用r_print函数。

提前致谢!

4 个答案:

答案 0 :(得分:0)

看一下php的var_export()

  

var_export - 输出或返回变量的可解析字符串表示

答案 1 :(得分:0)

尝试implode()功能:

echo implode(', ', array_values($entries));

答案 2 :(得分:0)

您想如何输出它们?以逗号分隔的?每个都在自己的线上?你有很多选择。这应该是以逗号分隔的技巧:

echo " <br />".implode(', ', $entries_unique). " ";

那就是说,小心只是直接在HTML中输出用户输入。这将使您对XSS漏洞和一般的无效HTML保持开放态度。要安全地输出HTML中的用户输入,您需要对输出进行正确的HTML编码。这比上面的行更好:

echo " <br />".implode(', ', array_map('htmlspecialchars', $entries_unique)). " ";

请参阅implode()array_map()htmlspecialchars()

答案 3 :(得分:0)

对于数组来说,foreach循环非常容易,尤其是单个关联数组。

foreach($entries_unique as $key => $value) {

echo "key: " . $key . " - value: " . $value . "<br/>";

}

查看php.net:http://php.net/manual/en/control-structures.foreach.php