سلام دوستان
من تو فایل helpers.php یه متغیر عمومی دارم و یا تابع که داخل تابع اون متغیر رو استفاده کردم ولی تو لارول درست کار نمیکنه در حالی که تو فایل php معمولی به خوبی کار میکنه
این کد من هست :
$t = [13];
function subtraction()
{
global $t;
$t[] = 14;
var_dump($t,gettype($t));
}
subtraction();
خروجی کد در سایت https://implode.io به تنظیمی که لاراول رو انتخاب کردم به عنوان اجرا کننده بصورت زیر هست :
array(2) {
[0]=> int(13)
[1]=> int(14)
}
string(5) "array"
در حالی که همین کد در فریم ورک لاراول خودم کار نمیکنه و $t رو به عنوان گلوبال نمیشناسه و بصورت لوکال کار میکنه و خروجیش این میشه
array:1 [
0 => 14
]
"array"
واقعا متوجه نمیشم چرا متغیر Global در فریمورک لارول من کار نمیکنه
@Alimotreb
@farhadi
@mehranmarandi90
@mhyeganeh
@mhyeganeh
@mobinasattari7
@ali.bayat
@hesammousavi
<?php
global $t ;
$t = [13] ;
function aa(){
array_push( $GLOBALS['t'] , 14) ;
var_dump($GLOBALS['t']) ;
}
aa()
عزیزم اونجا که متغیر رو گلوبال کردی بیرون از تابع بنویس و در خط بعد اینکه اون رو برابر باارایه شمال۱۳ گذاشتی
@ajdar9667
عزیزم ممنون از جوابت نمیدونم شوخی میکنی یا نه چون اصول تعریف متغیر گلوبال اینه که متغیری که بیرون تابع هست رو با دستور
global $var; میتونی داخل تابع استفاده کنی و اینکه ممنون میشم در مورد توضیحی که میدین اول ببینید که اجرا میشه یا نه بعد نظر ثبت کنید🙁
@muhamad
سلام
مگه بجز لاراول که فریم ورک php هست تو این بخش که سوال مطرح کردم چیز دیگه ای منظورم هست به نظرتون؟!!!!!!!!!!!
@saeiidm
خیر . برام شبه ایجاد شده بود.
در این زمینه تخصص ندارم و فقط می توانم یک از دوستان را تگ کنم :)
@Alimotreb
جناب من شوخی ندارم شما دارین اشتباه میکنین وقتی متغیر داخل تابع میاد از قبل چیزی نداره و نال هستش چون برای اولین بار برای تابع تعریف شده و بعد شما اونو گلوبال کردین !
دوست عزیز و بزرگوار @muhamad
لطفا سوالمو خوب بخونید و بعد جواب های ساده بدید
تابع به درستی در php معمولی کار میکنه ولی در فریم ورک لاراول کار نمیکنه و دلیلشم نمیدونم چرا
اینجا قبلا از اینکه تئوری پاسخ بدن جواب خودشون رو یه چک نمیکنند
این نمونه کد های شما تو اینترنت زیاد هست و مربوط به php معمولی هست که منم تو اون قسمت مشکلی ندارم !
و قبلا همه ی اینها رو دیدم و متغیر بنده هم بیرون تابع نه نال هست نه تعریف نشده البته اگه به
$t = [13];
در ابتدای کد و بیرون تابع دقت کنید!!!!!!
پس متغیر مربوطه داخل تابع از قبل چیزی دااارد و نال هم نیستش!!!!
اقای عزیز چرا تست نمی کنی خودت داخل تابعی که نوشتی بعد از خطی که متغیر t رو گلوبال کردی یک dd بگیر مقدار نال رو میده
<?php
global $t ;
$t = [13] ;
function aa(){
array_push( $GLOBALS['t'] , 14) ;
var_dump($GLOBALS['t']) ;
}
aa()
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟