PHP受保护的变量对我不起作用

时间:2017-03-28 18:02:25

标签: php variables protected

我在PHP中遇到了受保护变量的问题。为什么这段代码不起作用?它一直向我显示错误500.这是代码:

<?php
class A
{
    protected $variable;
}

class B extends A
{
    $this->variable = 'A';
}
?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        <!-- Code -->
    </body>
</html>

由于

3 个答案:

答案 0 :(得分:0)

用以下内容替换您的PHP代码:

class MainActivity extends AppCompatActivity implements YourAdapter.OnItemClickListener{
 @Override
public void onClick(View view) {
   TextView titleText = (TextView) view.findViewById(R.id.song_title);
        titleText.setVisibility(View.INVISIBLE);
}

它应该解决问题,如果有其他人提供有关正在发生的事情的更详细信息。

答案 1 :(得分:0)

你不能把归属等指令放在课堂上。只允许成员定义。将$this->variable = 'A';放在方法中。

变化:

class B extends A
{
    $this->variable = 'A';
}

要:

class B extends A
{
    public function __construct(){
        $this->variable = 'A';
    }
}

答案 2 :(得分:0)

类变量应该在方法或函数中使用。

<?php
class A
{
    protected $variable;
}

class B extends A
{
    // Class variables need to be used within methods. 
    // For example: to set the value
    function ConnectToDatabase()
    {
        $this->variable = 'mysql:user;pwd:12345';
    }

    // or to return the value
    function output()
    {
        return $this->variable;
    }
}

$b = new B();

$b->connectToDatabase();

echo $b->output();

http://sandbox.onlinephpfunctions.com/code/ac3171a98ccb901ca7cc8890659ca409a47fb30c