الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[ تمت الإجابة ]مالفرق بين العبارة echo و العبارة return

بدأه SalehZubir في 11 أبريل 2012 · 5 رد · 1,193 مشاهدة · في منتدى تطوير المواقع بـ PHP
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

ما هو الفرق بين العبارة echo والعبارة return

حيث انني ارى ان العبارتين يؤدون نفس الوظائف

بال ان العبارة return لا تستطيع ان تسترجع قيمة المتغير مباشرة بل تحتاج الى استرجاع قيمة المتغير من خلال parameter الـ Function

مثال توضيحي لما اقصد

$x =9;

return $x;

لو استخدمت العبارة echo سيطبع رقم 9

اريد توضيح السبب

كما اريد ان اعلم مالذي لا تستطيع العبارة echo فعله وتقوم به العبارة return

تم تعديل هذه المشاركة بواسطة SalehZubir في 11 أبريل 2012 في 22:08

#2

وظيفة echo تختلف كلياً عن return، حيث أن echo تستخدم للطباعة على الشاشة، في حين أن الدالة return تستخدم عادة في functions لاسترجاع قيمة ..

وخذ هذا المثال لتوضيح القصد:

<?php
function test($value) {
	if($value<5) {
		return true;
	}
	else {
		return false;
	}
}
?>

لاحظ ان الـ function تأخذ متغير value، فإذا كان المتغير اصغر من 5 فإنها ترجع القيمة true، وإذا كان غير ذلك فإنها ترجع القيمة false.

ويستخدم هذا في التأكد من العملية اذا كانت صحيحة أم خاطئة عبر هذه الإضافة:

if(test(3) == true) { /* some code here */ }

ويمكن استخدام الدالة return في نهاية الملف البرمجي، بمعنى انه لايقوم بقراءة الاسطر التي تأتي بعد الدالة return.

ومثال ذلك هذا الكود:

return true;
echo 'hello';

لاحظ ان دالة الطباعة echo موجودة، ولكن لن يعرض شيء على الشاشة لأن الدالة return تسبقها.

اتمنى ان اكون قد افدتك في ما سألت عنه، وإن كان من خطأ فالاخوة هنا يصححون والله أعلم.

#3

اشكرك اخي الكريم على ردك وشرحك

ولكن لدي سؤال اخر

نستطيع على نفس المثال الذي قمت انت بكتابته ان نستخدم العبارة echo بدل return وستحصل نفس النتيجة

<?php 
function test($value) { 
        if($value<5) { 
                echo true; 
        } 
        else { 
                echo false; 
        } 
} 
?>

ارجو طرح مثال لا تستطيع العبارة echo القيام به او حتى لو قامت به لن ترجع النتائج المرجوة

#4

اهلا بك اخي الحبيب ..

تستطيع اضافة echo داخل function، ولكن هل تظهر النتيجة صحيحة؟

خذ هذا المثال:

<?php

if(test(3) == true) { echo 'ok'; }

function test($value) {
	if($value<5) {
		echo true;
	}
	else {
		echo false;
	}
}
?>

ستطبع النتيجة على الشاشة: 1

وخذ هذا الكود:

<?php

if(test(3) == true) { echo 'ok'; }

function test($value) {
	if($value<5) {
		return true;
	}
	else {
		return false;
	}
}
?>

ستطبع النتيجة على الشاشة: ok

هنا الفرق بين echo و return

1
#5

السلام عليكم

أخى الكريم فقد أجابك أخى أبوغاليه بأنهما مختلفتان فى العمل كلياً , فجملة return تعود بقيم ولكن echo هى لعملية إظهار البيانات على المتصفح

بمعنى عام أى شئ يكتب بعد echo سوف يظهر على صفحة المتصفح " مهمتها العرض فقط " . ولكن return تعود ببيانات من الدالة لإعادة إستخدامها داخل الكود .

لاتحسبن العلم ينفع وحده مالم يتوج ربه بخلاق

لا إله إلا أنت سبحانك إني كنت من الظالمين

#6

اتضحت الصورة الان بعد المثال الذي قام به الاخ بو غالية ومقام بتوضيحه الاخ ahmedsaoud31

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…