نصائح

Eval () PHP Construct

Eval () PHP Construct

PHP eval () يستخدم build لتقييم سلسلة الإدخال كـ PHP ثم معالجتها على هذا النحو. Eval () ليست وظيفة ، ولكنها تعمل مثل وظيفة بمعنى أنها تقوم بإخراج كل شيء - باستثناء إخراجها كنص ، فإنها تقوم بإخراجها كرمز PHP ليتم تنفيذها. استخدام واحد من بناء eval () هو تخزين التعليمات البرمجية في قاعدة بيانات لتنفيذها فيما بعد.

مثال على Eval () بناء اللغة

فيما يلي مثال بسيط للترميز لبناء اللغة eval ().

";

eval (" $ a = " $ a "؛")؛

طباعة $ أ. "

";

?>

هذا المثال رمز المخرجات أصدقائي هم $ name و $ name2 عندما دعا لأول مرة مع بيان الطباعة ، وأنه يخرجأصدقائي هم جو وجيم عندما دعا للمرة الثانية بعد تشغيل eval ().

متطلبات وخصائص Eval ()

  • لا يمكن لف الكود الذي تم تمريره في فتح وإغلاق علامات PHP.
  • يجب أن يكون الرمز الذي تم تمريره صالحًا لـ PHP.
  • يجب إنهاء جميع العبارات بفاصلة منقوطة.
  • ا إرجاع بيان إنهاء تقييم التعليمات البرمجية.
  • يظل أي متغير محدد أو تم تغييره في eval () بعد إنهائه.
  • ما يحدث خطأ فادح في التعليمات البرمجية التي تم تقييمها ، يتم إنهاء البرنامج النصي.
  • لأن eval () عبارة عن بنية لغة وليست دالة ، لا يمكن استخدامها في وظائف الترتيب العالي.

خطر استخدام Eval ()

لا يشجع دليل PHP على استخدام eval () ، والتأكيد على أن استخدامه "خطير للغاية" لأنه يمكن تنفيذ كود PHP التعسفي. يُطلب من المستخدمين استخدام أي خيار آخر غير eval () ما لم يكن ذلك ممكنًا. استخدام PHP eval () بناء يعرض مخاطر أمنية.


شاهد الفيديو: Let's PHP! - #1 REPL - READ EVAL PRINT LOOP with psysh (يونيو 2021).