/
  • منابع غیر مستقیم به متغیر ها

  • صفحه‌ها (2):
  • ارسال پاسخ   امتیاز موضوع:
    • 0 رأی - میانگین امیتازات: 0
    • 1
    • 2
    • 3
    • 4
    • 5

    حالت موضوعی | حالت خطی منابع غیر مستقیم به متغیر ها
    نویسنده پیام
    cyletech غایب
    علیرضا اسکندرپور شوفری
    *****

    ارسال‌ها: 2,243
    تاریخ عضویت: ۱۳۸۸ فروردين ۸
    اعتبار: 42
    تشکرها : 1258
    ( 2239 تشکر در 1089 ارسال )
    ارسال: #1
    منابع غیر مستقیم به متغیر ها
    درود بر شما خواننده گرامی،

    در PHP 5 ویژگی منابع غیر مستقیم به متغیرها را دیدم و لازم دونستم که در موردش کمی توضیح بدم. البته اطمینان ندارم مختص ویرایش 5 برای php باشه! دیگه ببخشید Blush

    شما یک متغیر با نام name ایجاد می کنید و مقدار Alireza رو بهش میدید و در زیر آن یک متغیر دیگر اما با دو "$" یا همان "dollar name" با مقدار Saeed ایجاد می کنید و در نهایت متغیر Alireza را خارج کنید. کدش رو در زیر نوشتم.

    کد PHP:
    <?php

    $name 
    "Alireza";
    $
    $name "Saeed";

    print 
    $Alireza;

    ?>

    اگر دقت کنید خروجی Saeed خواهد بود. این به این دلیل است که شما مقدار متغیر name را تعویض کردید اما چرا از متغیر name خروجی نگرفتیم؟! به این دلیل که خطا به جای خروجی صحیح دریافت خواهیم کرد. اینطوری میشه که شما یک متغیر Alireza ایجاد می کنید. شما هرچقدر که بخواهید می تونید مقادیر را با افزودن "$" تغییر دهید اما نکته ای که باید بهش توجه داشت، این هست که بطور ساده براتون بگم، اون متغیری که می خواهید ایجاد کنید رو فقط بر روی متغیر بعدی خودش پشتیبانی می کنه. بگذارید با سورس بهتون بگم.

    کد PHP:
    <?php

    $name 
    "Alireza";
    $
    $name "Saeed";
    $$
    $name "IranPHP";
    $$$
    $name "Eskandarpour";

    print 
    $IranPHP;

    ?>

    اگر شما کد بالا رو تست کنید، خروجیش Eskandarpour خواهد بود و اما اگر بجای $IranPHP بگذاریم $Saeed خروچیش IranPHP خواهد بود. حالا متوجه منظورم شدید؟ اینم اضافه کنم که نمی تونید از متغیر اولی خروجی آخری بخواید ها! و همینطور اگر خروجی آخری رو نیز بخواید آخرین اولی یا وسطی و ... رو نشون نمیده بلکه خطا نشون میده!!!!!
    (آخرین ویرایش در این ارسال: ۱۳۸۹ فروردين ۱۲ ۰۲:۳۲ صبح، توسط cyletech.)
    ۱۳۸۹ فروردين ۱۲ ۰۲:۳۱ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : php parvane molana k2-4u admin Y.P.Y
    php آفلاین
    hossein
    ****

    ارسال‌ها: 629
    تاریخ عضویت: ۱۳۸۷ دي ۴
    اعتبار: 13
    تشکرها : 467
    ( 798 تشکر در 277 ارسال )
    ارسال: #2
    RE: منابع غیر مستقیم به متغیر ها
    در کل به این روشی که علیرضا توضیح داد میگن متغییر های پویا که خیلی جا ها بدرد می خوذت و کار رو خیلی راحت تر می کنن .
    __________________________________________________________________________
    ۱۳۸۹ فروردين ۱۲ ۱۱:۲۰ صبح
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط :
    hidensoft آفلاین
    عضو ارشد
    *****

    ارسال‌ها: 1,385
    تاریخ عضویت: ۱۳۸۸ شهريور ۳
    اعتبار: 46
    تشکرها : 729
    ( 1395 تشکر در 782 ارسال )
    ارسال: #3
    RE: منابع غیر مستقیم به متغیر ها
    بیشتر باعث گنگی کد می شه تا پویا شدن. البته به نظر من
    ۱۳۸۹ فروردين ۱۲ ۰۵:۵۴ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : molana
    cyletech غایب
    علیرضا اسکندرپور شوفری
    *****

    ارسال‌ها: 2,243
    تاریخ عضویت: ۱۳۸۸ فروردين ۸
    اعتبار: 42
    تشکرها : 1258
    ( 2239 تشکر در 1089 ارسال )
    ارسال: #4
    RE: منابع غیر مستقیم به متغیر ها
    (۱۳۸۹ فروردين ۱۲ ۰۵:۵۴ عصر)hidensfot نوشته شده توسط:  بیشتر باعث گنگی کد می شه تا پویا شدن. البته به نظر من

    نظر شما محترم هست آقا محمد اما خوب این یک روش بسیار کارآمد و ساده از array است و همینطور باعث میشه از نوشتن متغیر های اضافی که تنها یک مقدار می پذیرند جلوگیری بشه که در نتیجه فایل ما سبک تر خواهد شد و ...
    ۱۳۸۹ فروردين ۱۲ ۰۶:۴۵ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط : molana
    zoghal آفلاین
    صالح سوزنچی
    *****

    ارسال‌ها: 1,760
    تاریخ عضویت: ۱۳۸۷ دي ۲۵
    اعتبار: 23
    تشکرها : 1500
    ( 1729 تشکر در 992 ارسال )
    ارسال: #5
    RE: منابع غیر مستقیم به متغیر ها
    این روش برای مورد های کوچک و شاید خاص کاربرد داشته باشه. اما به هیچ عنوان نمی تونه جای کاربرد آرایه رو بگیره. پی اچ پی بی ارایه یعنی هیجی
    ۱۳۸۹ فروردين ۱۲ ۱۰:۳۶ عصر
    یافتن ارسال‌ها WWW پاسخ با نقل قول
     تشکر شده توسط : php
    cyletech غایب
    علیرضا اسکندرپور شوفری
    *****

    ارسال‌ها: 2,243
    تاریخ عضویت: ۱۳۸۸ فروردين ۸
    اعتبار: 42
    تشکرها : 1258
    ( 2239 تشکر در 1089 ارسال )
    ارسال: #6
    RE: منابع غیر مستقیم به متغیر ها
    (۱۳۸۹ فروردين ۱۲ ۱۰:۳۶ عصر)zoghal نوشته شده توسط:  این روش برای مورد های کوچک و شاید خاص کاربرد داشته باشه. اما به هیچ عنوان نمی تونه جای کاربرد آرایه رو بگیره. پی اچ پی بی ارایه یعنی هیجی

    صالح جان بنده هم عرض کردم که یک کار ساده array را این روش انجام میدهد!
    ۱۳۸۹ فروردين ۱۳ ۰۱:۴۱ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    hidensoft آفلاین
    عضو ارشد
    *****

    ارسال‌ها: 1,385
    تاریخ عضویت: ۱۳۸۸ شهريور ۳
    اعتبار: 46
    تشکرها : 729
    ( 1395 تشکر در 782 ارسال )
    ارسال: #7
    RE: منابع غیر مستقیم به متغیر ها
    (۱۳۸۹ فروردين ۱۳ ۰۱:۴۱ صبح).v0id نوشته شده توسط:  صالح جان بنده هم عرض کردم که یک کار ساده array را این روش انجام میدهد!

    والا من هر چی فکر می کنم نمی تونم این جمله رو بفهمم. تفاوت زیادی بین آرایه و متغیر هست.

    در مورد خود این موضوع این سوال هست که آیا اصلا نیازی هست که یک متغیر با مقدار درون متغیر دیگه ای داشته باشیم ؟ چه نیازی هست ؟ در مورد حجم حافظه هم فکر نمی کنم تاثیر چندانی داشته باشه. چون در هر دو حالت متغیر ها تعریف می شوند.
    ۱۳۸۹ فروردين ۱۳ ۱۰:۴۳ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    k2-4u آفلاین
    LAMP Programmer
    ***

    ارسال‌ها: 88
    تاریخ عضویت: ۱۳۸۸ مرداد ۲۱
    اعتبار: 4
    تشکرها : 64
    ( 218 تشکر در 56 ارسال )
    ارسال: #8
    RE: منابع غیر مستقیم به متغیر ها
    کد PHP:
    <?php

    $name 
    "Alireza";
    $
    $name "Saeed";

    print 
    $Alireza;

    ?>
    این قابلیت در php 4 هم بود !
    خیلی وقت ها هم کار آدم رو راه میندازه
    ------
    ولی نمیدونم میشد بیشتر از یک $ گذاشت یا نه
    ---------

    تفاوت متغییر و آرایه اینه که
    آرایه . بیشتر از یک عضو داره Big Grin
    (آخرین ویرایش در این ارسال: ۱۳۸۹ فروردين ۱۳ ۱۱:۲۷ صبح، توسط k2-4u.)
    ۱۳۸۹ فروردين ۱۳ ۱۱:۲۶ صبح
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    cyletech غایب
    علیرضا اسکندرپور شوفری
    *****

    ارسال‌ها: 2,243
    تاریخ عضویت: ۱۳۸۸ فروردين ۸
    اعتبار: 42
    تشکرها : 1258
    ( 2239 تشکر در 1089 ارسال )
    ارسال: #9
    RE: منابع غیر مستقیم به متغیر ها
    نقل قول: ولی نمیدونم میشد بیشتر از یک $ گذاشت یا نه
    اگه یکدونه بگذاری که خطا نشونت میده برادر!

    نقل قول: این قابلیت در php 4 هم بود !
    عرض کردم که مطمئن نیستم حتما برای PHP 5 باشه!

    نقل قول: والا من هر چی فکر می کنم نمی تونم این جمله رو بفهمم. تفاوت زیادی بین آرایه و متغیر هست.
    کار ساده این روش مثل یک کار پیشرفته آرایه می مونه این صد دفعه! مثلا با کمک آرایه به یک متغیر چندین مقدار میدیم و هر کدوم رو خواستیم در هرجا فراخوانی می کنیم و این روش هم درست مثل همونه به یک متغیر چندین مقدار جدا میدیم که هرجا خواستیم فراخوانی کنیم.

    نقل قول: در مورد خود این موضوع این سوال هست که آیا اصلا نیازی هست که یک متغیر با مقدار درون متغیر دیگه ای داشته باشیم ؟ چه نیازی هست ؟ در مورد حجم حافظه هم فکر نمی کنم تاثیر چندانی داشته باشه. چون در هر دو حالت متغیر ها تعریف می شوند.
    بهتره خودت روش فکر کنی و ببینی کجا میتونی ازش استفاده کنی.
    ۱۳۸۹ فروردين ۱۳ ۱۲:۳۷ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    admin آفلاین
    وحید سهرابلو
    **********

    ارسال‌ها: 5,734
    تاریخ عضویت: ۱۳۸۷ آذر ۲۴
    اعتبار: 100
    تشکرها : 1362
    ( 6196 تشکر در 3438 ارسال )
    ارسال: #10
    RE: منابع غیر مستقیم به متغیر ها
    البته اینکار یک مشکلی رو داره و اونم اینه اگر داخل متغیر اولی یک رشته که با عدد شروع میشه وجود داشته باشه این باعث خطا میشه. در کل هر رشته ای که یک نام متغیر نامعتبر باشه اخطار میده.
    البته برای آموزش خوبه ولی استفاده ازش یه ریسک هست. مخصوصا برای رشته هایی که ثابت نیستن و از ورودی ها میان
    ۱۳۸۹ فروردين ۱۳ ۰۵:۵۸ عصر
    یافتن ارسال‌ها پاسخ با نقل قول
     تشکر شده توسط :
    « قدیمی تر | تازه‌ تر »

  • صفحه‌ها (2):
  • ارسال پاسخ
    پرش به انجمن:


    کاربرانِ درحال بازدید از این موضوع: 1 مهمان
    IranPHP.org | تماس با ما | بازگشت به بالا | بازگشت به محتوا | بایگانی | پیوند سایتی RSS