Add attribute to an object in PHP

前端 未结 3 1174
终归单人心
终归单人心 2021-01-03 17:49

How do you add an attribute to an Object in PHP?

相关标签:
3条回答
  • 2021-01-03 17:54

    Take a look at the php.net documentation: http://www.php.net/manual/en/language.oop5.properties.php

    Attributes are referred to as "properties" or "class members" in this case.

    0 讨论(0)
  • 2021-01-03 18:03

    Well, the general way to add arbitrary properties to an object is:

    $object->attributename = value;
    

    You can, much cleaner, pre-define attributes in your class (PHP 5+ specific, in PHP 4 you would use the old var $attributename)

    class baseclass
     { 
    
      public $attributename;   // can be set from outside
    
      private $attributename;  // can be set only from within this specific class
    
      protected $attributename;  // can be set only from within this class and 
                                 // inherited classes
    

    this is highly recommended, because you can also document the properties in your class definition.

    You can also define getter and setter methods that get called whenever you try to modify an object's property.

    0 讨论(0)
  • 2021-01-03 18:18

    this is a static class but, the same principle would go for an intantiated one as well. this lets you store and retrieve whatever you want from this class. and throws an error if you try to get something that is not set.

    class Settings{
        protected static $_values = array();
    
    public static function write( $varName, $val ){ 
        self::$_values[ $varName ] = $val; 
    }
    public static function read( $varName ){ 
    
        if( !isset( self::$_values[ $varName ] )){
            throw new Exception( $varName . ' does not exist in Settings' );
        }
    
        return self::$_values[ $varName ]; 
    }
    }
    
    0 讨论(0)
提交回复
热议问题