4

これは私の最初の OOP プログラムなので、怒らないでください :) 問題は、次のエラーが発生したことです。

47 行目の D:\xampp\htdocs\php\OOP\coder_class.php の保護されたプロパティ Code::$text にアクセスできません

プログラムは単純に文字列をコード化し、それをデコードします。これが OOP を学ぶ良い例かどうかはわかりません。

<?php
class Code
{
    // eingabestring
    protected $text;

            public function setText($string)
            {
                $this->text = $string;
            }

            public function getText()
            {
                echo $this->text;
            }
}

class Coder extends Code
{
    //Map for the coder
    private $map = array(
        '/a/' => '1',
        '/e/' => '2',
        '/i/' => '3',
        '/o/' => '4',
        '/u/' => '5');

            // codes the uncoded string
    public function coder() 
    {
        return preg_replace(array_keys($this->map), $this->map, parent::text);      
    }
}

class Decoder extends Code
{
    //Map for the decoder
    private $map = array(
    '/1/' => 'a',
    '/2/' => 'e',
    '/3/' => 'i',
    '/4/' => 'o',
    '/5/' => 'u');

            // decodes the coded string
            public function decoder()
    {
        return preg_replace(array_keys($this->map), $this->map, parent::text);      
    }
}

$text = new code();
    $text -> setText("ImaText");
    $text -> coder();
    $text -> getText();

?>

これを修正するのを手伝ってくれる人もいます。PHP は初めてです。

4

2 に答える 2