PHP 受保护的变量对我不起作用
PHP Protected variables don't work for me
我在 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>
谢谢
将您的 php 代码替换为以下代码:
<?php
error_reporting(-1);
class A
{
protected $variable;
}
class B extends A
{
public function __construct()
{
$this->variable = 'A';
}
}
?>
它应该可以解决问题,如果还有其他问题,可以为您提供更详细的信息。
您不能在 class 的正文中放置诸如属性之类的说明。只允许成员定义。将 $this->variable = 'A';
放入方法中。
变化:
class B extends A
{
$this->variable = 'A';
}
收件人:
class B extends A
{
public function __construct(){
$this->variable = 'A';
}
}
Class 变量应该在方法或函数中使用。
<?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
我在 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>
谢谢
将您的 php 代码替换为以下代码:
<?php
error_reporting(-1);
class A
{
protected $variable;
}
class B extends A
{
public function __construct()
{
$this->variable = 'A';
}
}
?>
它应该可以解决问题,如果还有其他问题,可以为您提供更详细的信息。
您不能在 class 的正文中放置诸如属性之类的说明。只允许成员定义。将 $this->variable = 'A';
放入方法中。
变化:
class B extends A
{
$this->variable = 'A';
}
收件人:
class B extends A
{
public function __construct(){
$this->variable = 'A';
}
}
Class 变量应该在方法或函数中使用。
<?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