نمایش نتایج 1 تا 7 از 7

نام تاپیک: سوال در مورد شی گرایی

  1. #1

    سوال در مورد شی گرایی

    هر چی تو راهنمای خود php و pdf ها گشتم جواب سوالمو پیدا نکردم :
    چطوری میشه در یک کلاس مشتق شده به یک variable member کلاس والد دسترسی داشت ؟
    همانطوری که میدونید برای دسترسی به متد والد در فرزند از کد زیر استفاده میشه که برای variable member جوابگو نیست :

    parent::show();

  2. #2

    نقل قول: سوال در مورد شی گرایی

    اتفاقا من هم دنبال این موضوع بودم. سرچ کردم و به دردبخورترین راه حل این بود که اون property ها رو توی متد constructor والد مقدار بدید:
    class ParentClass {

    public $options;
    public function __construct() {
    $this->options = array(
    'option1'=>'setting1'
    );

    }

    //The rest of the functions would follow
    }
    class ChildClass extends ParentClass {

    public function __construct() {
    parent::__construct();
    $this->options['option2'] = 'setting2';
    }

    //The rest of the functions would follow
    }


    این رو یکی اینجا پیشنهاد کرده.

  3. #3

    نقل قول: سوال در مورد شی گرایی

    توی PHP5 از constantها هم برای ساختن ثابت میشه استفاده کرد که ظاهرا همه جا اعتبار دارند.

  4. #4

    نقل قول: سوال در مورد شی گرایی

    آقا دستت درد نکنه .
    ولی آیا این مساله ( عدم امکان دسترسی مستقیم به propertyهای کلاس والد در کلاس فرزند ) در بقیه زبانهایی که شی گرایی رو ساپورت میکنند هم وجود داره یا php اینطوریه ؟

  5. #5

    نقل قول: سوال در مورد شی گرایی

    به نظر میاد که اینجوره که شما میگید چون من وقتی سرچ کردم دیدم قبلا هم همچین سوالی پرسیده شده و راهکار استانداردی (ظاهرا) براش وجود نداره.

  6. #6

    نقل قول: سوال در مورد شی گرایی

    دوست عزیز
    من پیشنهاد می کنم جهت آشنایی کامل با مطالب خواسته شده، کتاب pro php رو مطالعه بفرمایید.
    موفق باشید
    ما را نه غم دوزخ و نی حرص بهشت است!
    www.yaqubian.com

  7. #7

    نقل قول: سوال در مورد شی گرایی

    من این روش جدیدا به ذهنم اومد گفتم به این تاپیک اضافه کنم.
    میشه یه متد برای گرفتن Property توی کلاس Parent قرار داد و توی کلاسهای Child اون رو Call کرد:
    class parent {
    ....
    function getProperty($property)
    {
    return $this->$property;
    }
    ....
    }


    class child extends parent {
    ....
    $property1 = parent::getProperty("member1");
    ....
    }



    موفق باشید

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •