سؤال

ما هي getters و setters في php5؟

هل يمكن لأحد أن يعطيني مثالاً جيدًا مع شرح؟

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

المحلول

هذا مفهوم للاختباء البيانات (أو تغليف) في OOP. وض الفصل) وإنشاء طريقتين getter و setter الذي يعالج قيمتك (التي هي عامة).

والسبب هو أن تكون قادرًا على التحقق من صحة البيانات أو معالجتها قبل الإعداد أو الحصول على قيمتك. هنا مثال موجز:

class test {

    private $count; //those who use your class are not able to see this property, only the methods above

    public function setCount( $value )    
    {
            //make some validation or manipulation on data here, if needed
        $this->count = $value;    
    }

    public function getCount()    
    {                
        return $this->count;    
    }    
}

نصائح أخرى

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

يعتبر Getters and Setters مفهومًا جديدًا تمامًا في PHP 5 في شكل وظيفتين سحريتين __get () و set (). هاتان الوظيفتان تعيينان أو الحصول على قيمة خاصية كائن بشكل كبير كما هو موضح في المثال التالي.

class Datatype{
private $thing;
public function _set($k,$v){
 $this->$k = $v;
}
public function __get($k){
 return $this->$k;
}
}

دليل PHP ليس في الحقيقة مطوّلة للغاية بشأن هذه القضية ، لكن هناك مثال مفصل للغاية يجب أن يفسر الكثير. الأساليب السحرية: الحمل الزائد للممتلكات

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