$Variable =& $variable

DaDaDooDoo

کاربر VIP
PHP:
$Variable =& $variable

سلام .
مفهوم این تکنیک چی هست و چه مواقعی کابرد داره ؟
 

Masoud1365

مدیر انجمن
این کد اشاره به رفرنس داره !
برای این که زیادی حرف نزنم میریم سراغ مثال :دی

PHP:
<?php
// Create a normal variable.
$var = 5;
// Make a reference to $var
$vartwo =& $var;
// Increment $vartwo
$vartwo++;
// Output $var
echo $var;
// Outputs "6"
?>

این لینک رو هم ببینی بد نیست یه سری مثال دیگه هم داره :wink:

HTML:
http://www.zymic.com/tutorials/php/using-references-in-php/
 
آخرین ویرایش:

Masoud1365

مدیر انجمن
جایی که نیاز به رفرنس داشته باشی :دی
کلا استفاده از این حالت خیلی کم پیش میاد یعنی اگر هم که پیش بیاد راه های دیگری هم برای رسیدن به هدف هست ! الان هرچی فکر میکنم چه مثال کاربردی بزنم یه چیز ساده که بتونم زود بنویسم یادم نمیاد :green:
 

MMSHFE

Active Member
با سلام، فرض كنيد شما و دوستتون ميخواين روي يك پروژه با هم كار كنيد. حالا دوستتون عادت داره از اسامي طولاني استفاده كنه و شما نه! دوستتون يك متغير توي كدش نوشته به اين صورت:
PHP:
$myVariableWithLongName = 5;
حالا شما بعد از اينكه اين فايل دوستتون رو include كردين، اين كد رو مينويسيد:
PHP:
$var = &$myVariableWithLongName;
از اينجا به بعد، var$ يك اسم مستعار براي myVariableWithLongName$ خواهد بود چون شما به جاي مقدار اين متغير، يك ارجاع بهش رو توي var$ ذخيره كردين. در حقيقت، هر دو متغير به يك محل از حافظه اشاره ميكنن. درنتيجه شما هر كاري روي متغير خودتون انجام بدين، روي متغير دوستتون هم اعمال خواهد شد. البته اين فقط يكي از كاربردهاي استفاده متغيرها بصورت ارجاعي هست. مورد ديگه در توابع هست. ميتونيد يكسري پارامتر از نوع ارجاعي براي تابعتون تعريف كنيد و وقتي موقع صدا زدن، آرگومانهايي رو براشون ميفرستين، تغييرات روي پارامترها در بدنه تابع، در خارج از تابع روي آرگومانهاي متناظر هم اعمال ميشه. با اين روش ميتونيد بيش از يك خروجي از تابع بگيرين. كاري كه در حالت عادي نميشه چون فقط يك return اجرا ميشه!
موفق باشيد.
 

جدیدترین ارسال ها

بالا