ฟังก์ชั่นและคลาสใน PHP มีขอบเขตทั่วโลก ซึ่งหมายความว่าสามารถเรียกใช้นอกฟังก์ชันได้แม้ว่าจะถูกกำหนดไว้ภายในขอบเขตและในทางกลับกัน
แต่ PHP ไม่รองรับฟังก์ชันโอเวอร์โหลด และไม่สามารถกำหนดฟังก์ชันที่ประกาศไว้ก่อนหน้านี้ใหม่ได้
ฟังก์ชันนี้กำหนดเป็นฟังก์ชันที่ไม่ระบุตัวตนได้ และสามารถยกเลิกการตั้งค่าได้หลังจากดำเนินการเสร็จสิ้น
ด้านล่างนี้เป็นตัวอย่างโค้ดสำหรับสิ่งเดียวกัน -
if (function_exists('get_magic_quotes_gpc') && @get_magic_quotes_gpc()) $my_fn = create_function('&$v, $k', '$v = stripslashes($v);'); array_walk_recursive(array(&$_GET, &$_POST, &$_COOKIE, &$_REQUEST), $my_fn); unset($my_fn); }
ไม่สามารถเรียกฟังก์ชันที่ไม่ระบุตัวตนภายในตัวมันเองได้ วิธีแก้ปัญหาคือใช้ array_walk_recursive