Q:

declare value of property as equal to that of parent

I have a parent class called 'person'. 'individual' is a child class of 'person'.
In 'person', I have a protected property called '$_pk_person';
In 'individual', I want to create a protected property called '$_fk_individual_person' whose value is equal to the inherited value of '$_pk_person'.
Shouldn't I be able to do this by merely stating:
protected $_fk_individual_person = {$this->_pk_person};

or
protected $_fk_individual_person = $_pk_person;

or
protected $_fk_individual_person = get_pk_person();

or
protected $_fk_individual_person = self::get_pk_person();

or
protected $_fk_individual_person = self::_pk_person;

or
protected $_fk_individual_person = parent::_pk_person;

or
protected $_fk_individual_person = parent::get_pk_person();

in class 'individual'??
None of them are working. I must be committing a fundamental error somewhere, as I am a complete novice.
Please help me out.
AFTER USING CONSTRUCTOR, my class looked like this:
class individual extends person {
public $_fk_individual_person;
function __construct() {
    $this->_fk_individual_person = $this->_pk_person;
}
}

And I tested it, but screen was blank:
    $xyz = new individual();
$xyz->pk_person='abcd';

echo $xyz->_fk_individual_person;

Where did I goof up now? I'm sorry, but I'm an absolute novice (started oop coding just yesterday, this being my first class)

A:

You cannot do this without a constructor. Because the initialization must be const or known at compile time. Look an manual:

Class member variables are called "properties". You may also see them
  referred to using other terms such as "attributes" or "fields", but
  for the purposes of this reference we will use "properties". They are
  defined by using one of the keywords public, protected, or private,
  followed by a normal variable declaration. This declaration may
  include an initialization, but this initialization must be a constant
  value--that is, it must be able to be evaluated at compile time and
  must not depend on run-time information in order to be evaluated.

But using constuctor is the way to go:
class individual extends person {
    protected $_fk_individual_person;
    function __construct() {
        $this->_fk_individual_person = $this->_pk_person;
    }
}

