سؤال

عند استخدام العقيدة ، أتعثر على هاتين الكلمتين: الملحق والطفر.

هل هذه تستخدم فقط في العقيدة أم أنها خاصة بـ PHP؟

وماذا تقصد؟

شكرًا

هل كانت مفيدة؟

المحلول

إنها مجرد مصطلحات خيالية لل getters والمستقبين.

class MyClass
{
    private $prop;

    // Accessor (or Getter)
    public function getProp()
    {
        return $this->prop;
    }


    // Mutator (or Setter)
    public function setProp($value)
    {
        $this->prop = $value;
    }

}

نصائح أخرى

ألا ينبغي أن نستخدم __GET و __SET في PHP5 وبعد ذلك حاليا؟

إذا فهمت لك بشكل صحيح ، فهذه 2 خاصة بأعتقد أن أي لغة برمجة موجهة للكائن. النقطة المهمة هي أن Accessor هو طريقة أو وظيفة توفر الوصول إلى الحقول الخاصة في فئتك وطريقة التحور التي تسمح بتعديل الحقول الخاصة. يمكنني الاستمرار في الكتابة حول هذا الموضوع ، لكنني أقترح عليك فقط Google ، وستحصل على الكثير من المعلومات حول هذا الموضوع. كل شيء عن التغليف <- اقترح عليك البحث عن هذا المصطلح أيضًا.

إنها ليست مجرد مصطلحات مختلفة لل Getters والمستقبين ، على الأقل ليس في Laravel.

على حد تعبير الوثائق: "تتيح لك Accessors و Mouthors تنسيق سمات بليغة عند استردادها من نموذج أو تعيين قيمتها."

https://laravel.com/docs/master/eloquent-mutators

لذلك ، يمكنك القول أن getters والمقاطعون هم مجموعة فرعية من الملحقات والطفرات التي تغير البيانات بعامل الصفر.

بعبارة أخرى ، إذا أردت الحصول على "تكلفة" حقل خام من طاولة ، فسأستخدم getter. إذا أردت التعبير عن هذا الحقل وتنسيقه بالجنيه والبنس ، فيمكنني استخدام ملحق.

هناك طرق أخرى يمكنني من خلالها القيام بذلك ، لكن هذا خيار واحد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top