我有一个动态表单,每行有相应的复选框。
Plan Price Choose
PHP $3 []
.Net $2 []
C# $6 []
Java $2 []
C++ $10 []
ROR $2 []
用户可以选择多个复选框,然后选择的计划将显示在下一页上,如
输出
Java,C++,ROR,
用于输出的代码
<?php foreach ($_POST['check_list'] as $id => $plan_name) {
echo $id;
echo ',';
}
?>
它包含&#39;,&#39;最后。我想最后留下那个逗号。
期望的输出:
Java,C++,ROR
我该怎么做才能获得所需的输出?
答案 0 :(得分:4)
无需循环 - implode
和array_keys
可以满足您的需求:
echo implode(array_keys($_POST['check_list']));
http://php.net/manual/en/function.array-keys.php
http://php.net/manual/en/function.implode.php
答案 1 :(得分:1)
rtrim($string, ",");
这将删除所有&#34;,&#34;在字符串的末尾。
编辑:
好吧,在我查看代码之后,我发现我错了^
<?php
$lastkey = key(array_slice($_POST['check_list'], -1, 1, TRUE));
foreach ($_POST['check_list'] as $id => $plan_name) {
echo $id;
if ($id !== $lastkey)
echo ',';
}
?>
答案 2 :(得分:0)
试试这个:
$checked = $_POST['check_list'];
<?php
foreach ($checked as $id => $plan_name) {
echo $id;
if (end($checked) !== $plan_name)
echo ',';
}
?>