导航:首页 > 编程语言 > phpconstruct参数

phpconstruct参数

发布时间:2023-11-19 19:23:34

php __construct 传参问题

$std = new student(100);//传入scores
另外student的构造函数应该这样写
function __construct($num)
{
parent::__construct('someone',24,'123445');//调用父类的构造函数完成初始化
$this->scores = $num;
}
至于父类的构造函数参数可以从student类传进瞎埋来,像这样
function __construct($name,$age,$tel,$num)
或磨早蚂者只有一个参数的话使用数睁森组传入,像这样
function __construct($arg)
{
parent::__construct($arg['name'],$arg['age'],$arg['tel']);//调用父类的构造函数完成初始化
$this->scores = $arg['num'];
}

echo $stu->name;//这句为什么打印不出来?
是$std吧?

❷ PHP构造函数传递值的问题

__construct($hostname)里面的参数是构造函数的参数,只能在构造函数内部调用,
public $hostname;这是类的参数,整个类内部包括继承类都可以调用

第二种的参数只能在构造函数中使用,而第一种,则将传来的参数赋值给类的变量,所以第一种的hostname整个类内部的方法都可以使用$this->hostname来调用

❸ 在php中,子类extends继承了父类,当子类和父类同时存在构造函数__construct先执行哪一个呢

1、如果父类和子类中都没有显式的定义__construct,在实例化子类对象时,只会隐含的调用子类自己的构造方法。

2、如果父类中有显式的构造方法__construct,而子类中没有定义__construct,在实例化子类对象时,就会调用父类中的构造方法。

3、如果父类和子类中都显式的定义了__construct,在实例化子类对象时,只会调用子类自己的构造方法(这就像是子类重构了父类的构造方法),而如果也想要调用父类的构造方法的话,就需要在子类的__construct 方法中显式的调用,(如 __construct(){ parent::_construct();})。


(3)phpconstruct参数扩展阅读

子类的构造函数名与子类名相同。

在子类里父类的构造函数不会自动执行。

要在子类里执行父类的构造函数,必须执行类似以下语句:

$this->[父类的构造函数名()]

类的构造函数统一命名为__construct()。

子类的构造函数名也是__construct()(也是废话)。

在子类里父类的构造函数会不会执行,分两种情况:

1、如子类不定义构造函数 __construct(),则父类的构造函数默认会被继承下来,且会自动执行。

2、如子类定义了构造函数 __construct(),因为构造函数名也是__construct(),所以子类的构造函数实际上是覆盖(override)了父类的构造函数。这时执行的是该子类的构造函数。

这时如果要在子类里执行父类的构造函数,必须执行类似以下语句:parent::__construct();

❹ php 构造函数格式,具体该怎么写应该注意什么呢

在PHP里,如果你没有手写构造函数,则php在实例化这个对象的时候,会自动为类成员以及类方法进行初始化,分配内存等工作,但是有些时候不能满足我们的要求,比如我们要在对象实例化的时候传递参数,那么就需要手动编写构造函数了,手写构造函数有两种写法,只是表现形式不同,其实本质一样
class test
{
function __construct()
{
//your code
}
}
class test
{
function test()//如果方法名跟类名字一样,将被认为是构造函数
{
//your code
}
}
以上为两种基本形式
我刚才说的传递参数进行实例化的例子,简单的写一个参考

class test
{
public $test = '';
function __construct($input = '')
{
$this->test = $input;
}
function getTest()
{
return $this->test;
}
}
$a = new test('a test');
echo $a->getTest()//将输出 a test
$b = new test();
echo $a->getTest()//没有任何输出(其实是有输出,但是输出为空)

❺ php如何传递类参数

PHP类中,可能有多个属性参数。当使用new创建一个对象的时候,可能需要完成初始化操作,需要从外边传递参数进来。下面演示具体过程:
?php
class Test {
//定义私有变量name ,age
private $name, $age;
//构造函数,初始化的时候最先执行
public function __construct($name, $age) {
$this-
name = $name;
$this->age = $age;
}
public function showMsg() {
return "大家好,我叫".$this->name.";今年".$this->age."岁了!";
}
}
//定义参数
$name="网络知道";
$age=10;
//初始化类的时候传递参数
$te=new Test($name, $age);
echo $te->showMsg();
//输出结果:大家好,我叫网络知道;今年10岁了!
?>

❻ 关于php构造函数

用于类的初始化,在新建一个对象时被立即执行,既

new base();

此时会执行__construct()

$this是指类(实例)自身

❼ php类定义了属性,类中的方法要使用默认值怎么办

每个方法都必须要定义的参数就可以直接定义个类属性了,如果不变的话可以直接public $arg='xxx';
如果随着场景不同这个值可能会发生变化,就把赋值放到构造方法里
public function __construct($aa)
{
$this->arg = $aa;
}
$obj = new exp($aa);
下面的方法就不用传参数了,直接调用$this->arg就可以了
再如果每次调用不通的方法,变量arg都不同,就不要定义属性了,直接给方法传值就可以了。

阅读全文

与phpconstruct参数相关的资料

热点内容
nat地址访问外网服务器 浏览:966
怎样用java编译一个心形 浏览:934
如何使用python中的pygame 浏览:836
python实用小工具 浏览:24
怎么在安卓手机上去除马赛克 浏览:235
农行浓情通app怎么下载 浏览:533
怎么把原文件夹找回来 浏览:535
俄罗斯方块实现python思路 浏览:735
汉语拼音英语编译代码 浏览:501
程序员应具备的能力 浏览:606
手机石墨文档文件夹访问权限 浏览:656
客户端如何登陆域文件服务器 浏览:530
两位数的平方计算法 浏览:930
android图片分块 浏览:715
图形平移命令 浏览:962
聚类算法JAVA代码 浏览:407
网站图标素材压缩包 浏览:892
娱乐化app怎么做 浏览:638
加密货币行业前景如何 浏览:575
arm查询法的局限性和编译流程 浏览:81