
การตรวจสอบความถูกต้องของข้อมูล
Constraints, custom validator, validation groups, การตรวจสอบ Entity, การตรวจสอบ DTO
1บทบาทหลักของ component Validator ของ Symfony คืออะไร?
บทบาทหลักของ component Validator ของ Symfony คืออะไร?
คำตอบ
component Validator ของ Symfony ตรวจสอบความถูกต้องของข้อมูลตามกฎที่กำหนดไว้ที่เรียกว่า constraints สามารถตรวจสอบอ็อบเจกต์ ค่าสเกลาร์ และอาร์เรย์ได้ โดยจะคืนค่ารายการ violation หากไม่เป็นไปตามกฎ component นี้ถูกผสานรวมกับฟอร์ม แต่ก็สามารถใช้งานแบบแยกอิสระได้เช่นกัน
2ควรใช้ constraint ใดเพื่อตรวจสอบว่า field ไม่ว่างเปล่าหรือเป็น null?
ควรใช้ constraint ใดเพื่อตรวจสอบว่า field ไม่ว่างเปล่าหรือเป็น null?
คำตอบ
constraint NotBlank ตรวจสอบว่าค่าหนึ่งไม่ว่างเปล่า (สตริงว่าง, null หรืออาร์เรย์ว่าง) ซึ่งต่างจาก NotNull ที่ยอมรับสตริงว่าง NotBlank ถูกใช้บ่อยที่สุดสำหรับ field ฟอร์มที่จำเป็น เพราะมันยังปฏิเสธสตริงที่มีเฉพาะช่องว่างอีกด้วย
3จะใช้ validation constraint กับ property ของ entity โดยใช้ attributes ของ PHP 8 ได้อย่างไร?
จะใช้ validation constraint กับ property ของ entity โดยใช้ attributes ของ PHP 8 ได้อย่างไร?
คำตอบ
ตั้งแต่ PHP 8 เป็นต้นมา validation constraint จะถูกนำไปใช้ผ่าน attributes ที่อยู่เหนือ property โดยตรง ไวยากรณ์ใช้คำนำหน้า Assert ร่วมกับ namespace Symfony\Component\Validator\Constraints แนวทางนี้กระชับกว่าการใช้ annotation แบบ DocBlock และได้ประโยชน์จากการรองรับแบบ native ของ PHP
constraint ใดที่ตรวจสอบว่าสตริงตรงกับรูปแบบอีเมลที่ถูกต้อง?
จะตรวจสอบความยาวของสตริงด้วยค่าต่ำสุดและสูงสุดได้อย่างไร?
+15 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Symfony อื่นๆ
PHP สมัยใหม่ (8.1+)
พื้นฐาน Symfony
Routing & Controllers
Twig & Templates
พื้นฐาน Doctrine ORM
ฟอร์ม Symfony
Dependency Injection & Services
Security & Authentication
Doctrine ขั้นสูง
API Platform
Serializer Component
Events & Event Subscribers
Console & Commands
Messenger Component
HTTP Client
Cache & ประสิทธิภาพ
Workflow Component
Testing Symfony
Mailer Component
การแปลและ i18n
EasyAdmin Bundle
สถาปัตยกรรม Symfony
ประสิทธิภาพและการเพิ่มประสิทธิภาพ
ความปลอดภัยขั้นสูง
Custom Bundles
Microservices ด้วย Symfony
Real-time & WebSockets
Deployment & DevOps
เชี่ยวชาญ Symfony สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี