الوصف
جملة ( PHP Return ) ليست دالة ( PHP Functions ) وإنما هي ( Language Constructs ) وتقوم بإنهاء تنفيذ الكود ويمكن الاستغناء عن الأقواس كما هو الحال في أي ( Language Constructs ) وهناك حالتين لإضافة جملة return
كتابتها في الإطار العام للكود ( PHP Global Scope ). كتابتها داخل دالة ( PHP Functions ). إضافة return في الإطار العام للكود إذا تم استدعاء return في الإطار العام للكود تقوم بإيقاف تنفيذ الكود الحالي. إذا تم دمج ملف الكود الذي يحتوي على return باستخدم ( PHP Include ) أو ( PHP Require ) , فإن الكود الموجود في ملف الاستدعاء ( الملف الذي تم دمج ملف return داخله ) لن يتأثر بجملة return. ايقاف تنفيذ الكود <?php echo "b"; return; echo "a"; ?>
عند تنفيذ هذا الكود سيتم طباعة النص ” b ” وهذا يعني أنه تم إيقاف الكود عند جملة return.
[button title=”تجربة الكود” link=”https://makiomar.com/php_functions/return/return_stop_excution.php” target=”_blank” size=”” color=”” class=””]
دمج ملف return باستخدام includeعند دمج ملف يحتوي على جملة return داخل ملف آخر باستخدام ( PHP Include ) ستقوم return بإيقاف تنفيذ كود الملف الموجودة به فقط وتخزينه ثم اضافة النتيجة لملف الاستدعاء , ولن تؤثر على كود ملف الاستدعاء.
مثال :
سنقوم بعمل ملف باسم a.php ونقوم بكتابة الكود التالي داخله <?php include("b.php"); echo "a"; ?>1- في السطر رقم 2 قمنا بدمج الملف b.php باستخدام ( PHP Include ) . هذا الملف سيحتوي على جملة return
2- في السطر رقم 3 نطلب طباعة ” a ”
[highlight background=”” color=””]لاحظ وضع سطر Include قبل دالة الطباعة حتي نتأكد من أن استدعاء return من ملف خارجي لن يؤثر على كود ملف الاستدعاء[/highlight]
سنقوم بعمل ملف باسم b.php ونقوم بكتابة الكود التالي داخله <?php echo "b"; return; ?>
الآن عند تنفيذ كود ملف a.php ستكون النتيجة ” ba ” , إي تم طباعة محتويات الملفين مما يدل على أن return لم تقم بإيقاف تنفيذ كود ملف a.php
[button title=”تجربة الكود” link=”https://makiomar.com/php_functions/return/include_return/a.php” target=”_blank” size=”” color=”” class=””]
[highlight background=”” color=””]يُنصح بعدم استخدام جملة return في الإطار العام للكود ( Global Scope ) لما قد تسببه من مشاكل , بينما تُستخدم داخل دالة[/highlight]
كتابة Return داخل دالةعند إضافة جملة return داخل دالة فإنها تقوم بإنهاء كود الدالة وتخزين وسائط الدالة واسترجاعها كقيم للدالة لحين الاستفادة من هذا الاسترجاع ولمعرفة المزيد يمكنك قراءة ( PHP Returning Values )
حالات جملة return1 – بما أنها عبارة عن ( Language Construct ), يمكننا الاستغناء عن الأقواس , وهو الاستخدام الشائع. تكتب بالحالتين :
<?php return or return() // can be either or ?>2 – إذا لم يتم أضافة وسائط لها لذا يجب عدم كتابة الأقواس, وسيتم استرجاع القيمة ( PHP NULL )
3 – إذا تم كتابة return مع استخدام الأقواس بدون تمرير وسائط لها سيظهر خطأ Parse Error
4 – لايمكن استخدام الأقواس إذا كنت تقوم باستعادة المراجع Returning References
لمعرفة المزيد اقرأ ( PHP Returning References )