1
A
回答
2
你想要做的第一件事就是用trim():
裝飾 - 帶空格(或其它字符)從字符串的開頭和結尾
確實你想接受使用者名稱,例如'Adam Sinclair '
,並在開頭或結尾處留出空格。該功能將刪除它們。
然後通過使用preg_match():
$pattern = '/().*()/';
$username = 'Wrong Username containing more than one space';
if ($ret = preg_match($pattern, $username))
echo 'Wrong username\n';
else if ($ret !== false)
echo 'Good username\n';
$username = 'Adam Sinclair';
if (preg_match($pattern, $username))
echo 'Wrong username\n';
else if ($ret !== false)
echo 'Good username\n';
從PHP documentation:
的preg_match()如果該圖案給定受試者,0,如果沒有,或FALSE如果錯誤匹配,則返回1發生。
然而另一種選擇是使用substr_count():
if (substr_count($username, ' ') > 1)
echo 'Wrong username\n';
else if ($ret !== false)
echo 'Good username\n';
從PHP documentation:
substr_count - 數子的出現次數
+0
感謝兄弟它的魅力 – 2014-09-24 12:59:20
1
我想你不需要preg_match。這可以用substr_count這樣來完成:
if(substr_count($username, ' ') > 1)
echo 'Wrong username';
相關問題
- 1. 如何防止用戶多次發帖?
- 2. 多次使用preg_match?
- 3. 如何防止用戶每次多次打開同一頁面
- 4. 防止用戶提交好惡多次
- 5. 如何防止java.lang.OutOfMemoryError:PermGen空間?
- 6. 如何防止用戶投票超過一次?
- 7. 如何防止用戶一次打開多個表單?
- 8. 如何防止單個用戶名的多次登錄
- 9. 如何防止用戶多次輸入數據(NSDate)
- 10. 解析數組[如何防止用戶投票多次]
- 11. 如何防止用戶在1小時內多次投票?
- 12. Apache防止在用戶空間內使用VirtualHost? Mac OS X
- 13. 防止多次使用Javascript函數
- 14. 使用按鈕防止多次提交
- 15. 如何防止通過MooTools
- 16. 如何防止通過URL
- 17. 如何防止進入空的空間?
- 18. 即使使用unbinders,我如何防止jQuery觸發多次?
- 19. 如何防止用戶通過表單欺騙數據?
- 20. 如何防止HG Workbench通過使用子庫來請求用戶名?
- 21. 通過評論,多行(自由空間)正則表達式preg_match
- 22. 如何防止使用php自動多次訪問網站?
- 23. 如何防止用戶在多行塊中一次創建多條記錄?
- 24. 防止用戶註冊兩次
- 25. 防止用戶執行兩次動作
- 26. 防止用戶輸入一次註銷
- 27. 防止用戶
- 28. 防止用戶
- 29. 防止用戶
難道不是一個空間?或者不止一個重要空間? (即「用戶名」與「用戶名」)其中「Foo Bar」可以接受,但「Foo Bar Foo」不會 - 並且「Foo Bar」和「Foo Bar」被認爲是相同的,並且「Foo Bar Foo 「仍然會被拒絕。 – 2014-09-24 00:57:01