Type Hinting ใน PHP คืออะไร?

Type Hinting Ni Php Khux Xari



คำแนะนำประเภท PHP เป็นคุณลักษณะที่มีประโยชน์อย่างมากซึ่งมีมาตั้งแต่ PHP 5 ก่อนเวอร์ชันนี้ ฟังก์ชัน PHP ไม่จำเป็นต้องประกาศประเภทข้อมูลเฉพาะใดๆ ในอาร์กิวเมนต์หรือพารามิเตอร์ ด้วยการเปิดตัว PHP 5 นักพัฒนาสามารถระบุประเภทข้อมูลสำหรับฟังก์ชัน PHP ของตนได้โดยใช้คุณสมบัติที่เรียกว่าการบอกใบ้ประเภท สิ่งนี้อาจเป็นประโยชน์อย่างยิ่งเมื่ออัปเดตอินสแตนซ์เฉพาะภายในโปรแกรม PHP

ในบทความนี้เราจะเจาะลึกเกี่ยวกับ PHP พิมพ์คำใบ้ ความสามารถและสำรวจทั้งสองอย่าง อ่อนแอ และ คำใบ้ประเภทที่เข้มงวด .

PHP Type Hinting คืออะไร?

พิมพ์คำใบ้ ทำหน้าที่เป็นคำศัพท์การเขียนโปรแกรมที่อนุญาตให้คุณระบุประเภทข้อมูลของอาร์กิวเมนต์ที่คาดหวังในฟังก์ชัน ตัวอย่างเช่น เมื่อเขียน 'เพิ่ม' ฟังก์ชัน คุณสามารถระบุว่าพารามิเตอร์ควรเป็นจำนวนเต็ม หากคุณเรียกใช้ฟังก์ชันด้วยสิ่งอื่นที่ไม่ใช่จำนวนเต็ม จะเกิดข้อผิดพลาดโดยระบุว่าต้องใช้จำนวนเต็ม PHP เสนอคำแนะนำสองประเภทสำหรับการประกาศประเภทสเกลาร์และส่งคืน:







การบอกใบ้แบบอ่อนแอคืออะไร?

คำใบ้ประเภทอ่อนแอ เป็นโหมดเริ่มต้นของการทำงานสำหรับ PHP ซึ่งไม่ก่อให้เกิดข้อผิดพลาดในกรณีที่ประกาศประเภทไม่ตรงกัน กล่าวอีกนัยหนึ่ง คำใบ้ประเภทอ่อนแอ อนุญาตให้ PHP ดำเนินการโค้ดโดยไม่สร้างข้อผิดพลาด แม้ว่าชนิดข้อมูลของพารามิเตอร์จะไม่ตรงกับประเภทที่ต้องการ



ตัวอย่าง



พิจารณาตัวอย่างที่นำไปใช้ คำใบ้ประเภทอ่อนแอ ใน PHP






$num1 = ยี่สิบ ;
$num2 = 3.16537 ;
การทำงาน หลาย ( ลอย $num1 , นานาชาติ $num2 )
{
กลับ $num1 * $num2 ;
}
เสียงสะท้อน 'ค่าที่คำนวณได้คือ: ' , หลาย ( $num1 , $num2 ) ;
?>

ในโค้ดข้างต้น ฟังก์ชัน หลาย รับสองพารามิเตอร์ $num1 ประเภทลูกลอยและ $num2 เป็นประเภท int แต่ค่าที่ส่งผ่านเป็นอาร์กิวเมนต์เป็นประเภทที่แตกต่างกัน แม้ว่าประเภทจะไม่ตรงกัน แต่โค้ดก็ดำเนินการโดยไม่สร้างข้อผิดพลาดหรือข้อผิดพลาดร้ายแรง ซึ่งเกี่ยวข้องกับคำจำกัดความของ คำใบ้ประเภทอ่อนแอ .

เอาต์พุต



การบอกใบ้แบบเข้มงวดคืออะไร?

คำแนะนำประเภทที่เข้มงวด ใน PHP เป็นโหมดที่บังคับใช้ พิมพ์อย่างเข้มงวด และขว้างก ข้อผิดพลาดร้ายแรง หากการประกาศประเภทไม่ตรงกันเกิดขึ้น ยอมรับเฉพาะตัวแปรของประเภทการประกาศที่แน่นอนเท่านั้น และประเภทอื่นๆ จะส่งผลให้เป็น พิมพ์ผิด .

ใช้ คำใบ้ประเภทที่เข้มงวด คำสั่งแรกในไฟล์ต้องเป็น (เข้มงวด_types=1) มิฉะนั้นจะเกิดข้อผิดพลาดของคอมไพเลอร์ โหมดนี้มีผลกับไฟล์เฉพาะที่ใช้เท่านั้น และไม่สามารถแทนที่ได้ในขณะรันไทม์ เนื่องจากเป็นเวลาคอมไพล์ทั้งหมด

ตัวอย่าง

พิจารณาตัวอย่างที่ใช้การบอกใบ้แบบเข้มงวดใน PHP


ประกาศ ( เข้มงวด_ประเภท = 1 ) ;
$num1 = ยี่สิบ ;
$num2 = 3.16537 ;
การทำงาน หลาย ( ลอย $num1 , นานาชาติ $num2 )
{
กลับ $num1 * $num2 ;
}
เสียงสะท้อน 'ค่าที่คำนวณได้คือ: ' , หลาย ( $num1 , $num2 ) ;
?>

ตัวอย่างข้างต้นเกี่ยวข้องกับ คำใบ้ประเภทที่เข้มงวด เพราะมันรวมถึง “ประกาศ (strict_types=1)” คำสั่งซึ่งเปิดใช้งาน ประเภทที่เข้มงวด ตรวจสอบในไฟล์. การประกาศไม่ตรงกันทุกประเภทจะทำให้เกิดข้อผิดพลาดร้ายแรง

เอาต์พุต

รหัสด้านบนจะทำให้เกิดข้อผิดพลาดเนื่องจากการเข้าถึงค่าทศนิยมโดยใช้ int และการเข้าถึงค่าจำนวนเต็มโดยใช้ประเภทข้อมูลลอย

บทสรุป

พิมพ์คำใบ้ ใน PHP ช่วยให้นักพัฒนาสามารถระบุประเภทข้อมูลของอาร์กิวเมนต์ที่คาดหวังในฟังก์ชันได้ PHP เสนอคำแนะนำสองประเภท: คำใบ้ประเภทอ่อนแอ และ คำใบ้ประเภทที่เข้มงวด . คำใบ้ประเภทอ่อนแอ เป็นโหมดการทำงานเริ่มต้นที่ไม่ก่อให้เกิดข้อผิดพลาดหรือข้อผิดพลาดร้ายแรงในกรณีที่การประกาศประเภทไม่ตรงกัน ในขณะที่ คำใบ้ประเภทที่เข้มงวด บังคับใช้การพิมพ์ที่เข้มงวดและโยนข้อผิดพลาดร้ายแรงหากการประกาศประเภทไม่ตรงกันเกิดขึ้น นักพัฒนาควรเลือกเทคนิคการบอกใบ้ประเภทที่เหมาะสมตามความต้องการเฉพาะของพวกเขา