Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> PHP

PHP string cast vs strval function ฉันควรใช้อันไหน?


ค่าสามารถแปลงเป็นสตริงโดยใช้ (string) cast หรือฟังก์ชัน strval()

ฟังก์ชัน strval() เป็นการเรียกใช้ฟังก์ชันในขณะที่ (string) cast เป็นวิธีการแคสต์ประเภทภายใน

เว้นแต่จะมีชุดข้อมูลเฉพาะหรือกรณีการใช้งาน ทั้งสองอย่างนี้สามารถใช้แทนกันได้

นี่เป็นเพราะว่า PHP ใช้การแปลงชนิดอัตโนมัติ เนื่องจากชนิดของตัวแปรจะถูกกำหนดตามบริบทที่ใช้

ฟังก์ชัน strval($var) ส่งคืนค่าสตริงของ $var ในขณะที่ (string)$var จะแปลง "ประเภท" ของ $var อย่างชัดเจนในระหว่างขั้นตอนการประเมิน

$var อาจเป็นประเภทสเกลาร์หรืออ็อบเจ็กต์ที่ใช้เมธอด __toString

strval() ไม่สามารถใช้กับอาร์เรย์หรือวัตถุที่ไม่ใช้วิธี __toString นี้

โดยทั่วไป (สตริง)คาสต์ค่อนข้างเร็วกว่า