我想要做的是從表單中創建條目列表,但如果在表單中多次輸入同一個條目,則不希望同一個條目在列表中多次顯示。例如,假設一個人輸入「1」,但隨後兩個人輸入「2」,我只希望2在列表中出現一次。我可以使用什麼功能?只有當它還沒有被回顯時纔會回聲?
0
A
回答
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
瞧。
0
在PHP中沒有內置函數。但是你可以用類似嘗試:
$echoList = array();
function echoOnce($text)
{
global $echoList;
if(!in_array($text, $echoList)) {
echo $text;
$echoList[] = $text;
}
}
,然後只用echoOnce("whatever")
代替echo "whatever"
+0
對這樣的東西使用一個全局變量是不必要的,更不用說它在你的代碼中引入一個全局依賴,'in_array()'將執行一個'O(n)'搜索來輸出一個變量。這對我來說似乎非常低效。 – nickb
2
,最好的辦法應該是所有條目存儲在數組中(基本數值索引數組),然後刪除與
uniqueEntries = array_unique($yourEntries);
複製的文檔:代碼array_unique
例如:
$entries = array();
$entries[] = 1;
$entries[] = 1;
$entries[] = 2;
$entries = array_unique($entries);
print_r($entries);
將輸出:
3210相關問題
- 1. 只有當MySQL值匹配時纔會回顯文本
- 2. 只有當第一個被點擊時,JQuery纔會顯示
- 3. 只有當它有一些行顯示時才顯示錶
- 4. 回聲沒有顯示
- 5. PHP只有在其他PHP引用存在時纔會回顯?
- 6. 回聲「你還沒有輸入文件」
- 7. 只有當複選框沒有被選中時纔會調用javascript函數
- 8. 只有當它有一些值時才顯示textarea
- 9. 只有當沒有存在時,纔會添加.html
- 10. Php的Mysql回聲只有一半的結果,有時沒有
- 11. 只有當用戶有權限時才返回結果
- 12. 只有當所有信息都爲真時才返回行
- 13. 顯示只有當它被選中
- 14. 只有當它被設置時才獲取字符串值c#
- 15. Linux屏幕 - 只有當它存在時纔會被殺死(jenkins作業)
- 16. 只有當複選框被選中時,jquery纔會運行
- 17. 只有當圖片被觸摸時纔會拖動圖片
- 18. 只有當它包含某個值時,纔會重置值
- 19. jQuery。只有當表格框被選中時才顯示div
- 20. 當只有一個記錄被發現時,ActiveRecord沒有返回迭代
- 21. 只有回聲整數
- 22. 回聲只有唯一值
- 23. 只有當用戶登錄時纔會顯示文章
- 24. 只有當href文件存在時纔會顯示鏈接
- 25. 只有給定列只有一個值時才返回行
- 26. 只有當回調函數調用時才生成矢量
- 27. 只有當結果狀態完成時才執行CompletableFuture回調
- 28. 只有當SELECT返回時才執行DELETE
- 29. 只有當get_id()返回self.email時,flask-login才能工作.email
- 30. javascript:onsubmit只有在檢測到「返回false」時纔會執行
非常歡迎。 請考慮[語言>類型>數組](http://www.php.net/manual/en/language.types.array.php)和[數組函數](http://www.php.net) /manual/en/ref.array.php)瞭解更多關於PHP及其函數的信息。 –