PDA

View Full Version : صدا زدن تابع درون تابع دیگر



sina365
سه شنبه 25 آبان 1395, 19:40 عصر
سلام.
سوالی که دارم فکر میکنم ساده باشه، اما با جستجو در اینترنت و همین سایت به نتیجه درستی نرسیدم.

چرا وقتی یک فانکشن رو داخل یک فانکشن دیگه صدا می زنیم، گاهی اوقات (در بعضی جاهای برنامه) جواب میده و گاهی اوقات نه؟
یک مثال ساده:



<?php
function printdata($text){
echo $text;
}

function b($text) {

printdata($text);
}


b("hello");


کد بالا رو فقط برای مثال نوشتن و منظورم دقیقا این کد نیست.
حتی اتفاق افتاده که فانکشن c دقیقا مشابه فانکشن b تعریف کردم، (دقیقا کپیb )، c کار میکنه، اما b جواب نمیده.
اینکه فانکشن اول در چه محدوده ای قابل صدا زدن هست رو هم رعایت کرده ام، اما واقعا نمی دونم چه قانونی رو رعایت نکرده ام.
توی stack نوشته بود باید return استفاده کنی، اما من تست کردم فرقی نداشت . . .
پیشاپیش از راهنمایی شما کمال تشکر را دارم.

Unique
پنج شنبه 27 آبان 1395, 23:11 عصر
کلا با این جمله که میگی یه چیزی گاهی درسته گاهی غلط ! مشکل دارم. کدی که گذاشتی همیشه کار میکنه ! یه مثال بزن تا بشه بررسی کرد چرا کار نمیکنه !