我要做的是从表单中创建条目列表,但如果在表单中输入多次,我不希望在列表中多次显示相同的条目。例如,假设一个人输入“1”但随后两个人输入“2”,我只希望2在列表中出现一次。我可以使用什么功能?
答案 0 :(得分:2)
最好的方法是将所有条目存储在一个数组(基本数字索引数组)中,然后删除重复项
uniqueEntries = array_unique($yourEntries);
文档:array_unique
代码示例:
$entries = array();
$entries[] = 1;
$entries[] = 1;
$entries[] = 2;
$entries = array_unique($entries);
print_r($entries);
将输出:
Array
(
[0] => 1
[2] => 2
)
答案 1 :(得分:1)
在这种情况下,您应该使用PHP Arrays。数组是二维表。
/* Array
* key => value
* @key personID
* @value optionValue
*/
$array = array(
1 => 1, // Person 1 chose Option 1
2 => 2, // Person 2 chose Option 2
3 => 2 // Person 3 chose Option 2
);
print_r($array);
打印
Array
(
[1] => 1
[2] => 2
[3] => 2
)
您现在可以通过array_unique($array);
访问数组来获取一组唯一值。
$array_unique = array_unique($array);
$array_unique_values = array_values($array_unique);
// Access array values directly and store into variables.
// Notice that arrays in PHP start with the index zero.
$option1 = $array_unique_values[0];
$option2 = $array_unique_values[1];
echo "Option #1: " . $option1 . "\n";
echo "Option #2: " . $option2;
打印
Option #1: 1
Option #2: 2
瞧。
答案 2 :(得分:0)
PHP中没有内置函数。但你可以试试像:
$echoList = array();
function echoOnce( $text )
{
global $echoList;
if(!in_array($text, $echoList)) {
echo $text;
$echoList[] = $text;
}
}
然后只使用echoOnce( "whatever" )
代替echo "whatever"