Php 回波回波构造法;
不起作用:(您无法从构造函数返回任何内容。您已经返回了一个新对象,您无法在该对象上获取另一个值并将其同时分配给Php 回波回波构造法;,php,oop,constructor,Php,Oop,Constructor,不起作用:(您无法从构造函数返回任何内容。您已经返回了一个新对象,您无法在该对象上获取另一个值并将其同时分配给$db您无法从构造函数返回任何内容。您已经返回了一个新对象,您无法在该对象上获取另一个值并将其同时分配给$db <?php class DBFactory { function __construct(){ return 'Need to echo'; } } $db = new DBFactory;
$db您无法从构造函数返回任何内容。您已经返回了一个新对象,您无法在该对象上获取另一个值并将其同时分配给$db代码>
<?php
class DBFactory {
function __construct(){
return 'Need to echo';
}
}
$db = new DBFactory;
echo $db;
?>
我想这个“()”也在这里
我认为这个“()”也在这里构造函数不应该返回任何东西
如果要回显对象,必须定义如何使用魔术方法\uuuu tostring
:
$db = new DBFactory();
构造函数不应该返回任何内容
如果要回显对象,必须定义如何使用魔术方法\uuuu tostring
:
$db = new DBFactory();
通常不可能在类的构造函数中返回值。在这种情况下,$db包含类的实例,而不是返回值
您可以构建一个单独的函数,并让该函数返回值:
class DBFactory {
function __tostring(){
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db;
通常不可能在类的构造函数中返回值。在这种情况下,$db包含类的实例,而不是返回值
您可以构建一个单独的函数,并让该函数返回值:
class DBFactory {
function __tostring(){
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db;
我不明白,如果您试图在构造函数上返回值,为什么要查看OOP
OOP的全部要点是让对象执行许多任务,如果您想返回字符串、数组和资源,那么OOP不适合您
__构造函数用于在对象初始化的前几个阶段初始化代码,它允许您在用户可以使用对象之前执行代码来准备对象
如果您希望在对象上使用_toString,那么请明智地使用它,它的主要用途是在对象中提供可读性,而不是存储等。主要用于错误调试
当您使用new
关键字创建一个对象时,php的处理器会创建一个对象并将其分配给内存,然后它会运行构造,但不会保存任何从它返回的值,在构造函数到达其endppoint后,内存中对象的链接会返回到您要求的变量。理论上如此您可以运行$db->\uu construct()
,因为它仍然是一个方法,但只有在完全创建对象之后才能运行
只需创建一个方法来返回如下字符串
<?php
class DBFactory {
function toEcho() {
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db->toEcho();
?>
这样做真的很愚蠢,但正如你想知道的那样
class DBFactory
{
function whatAmI()
{
return 'I am DBFactory';
}
}
$MyOBJECT = new DBFactory;
echo $MyOBJECT->whatAmI();
我不明白,如果你试图在构造函数上返回值,为什么要研究OOP
OOP的全部要点是让对象执行许多任务,如果您想返回字符串、数组和资源,那么OOP不适合您
__构造函数用于在对象初始化的前几个阶段初始化代码,它允许您在用户可以使用对象之前执行代码来准备对象
如果您希望在对象上使用_toString,那么请明智地使用它,它的主要用途是在对象中提供可读性,而不是存储等。主要用于错误调试
当您使用new
关键字创建一个对象时,php的处理器会创建一个对象并将其分配给内存,然后它会运行构造,但不会保存任何从它返回的值,在构造函数到达其endppoint后,内存中对象的链接会返回到您要求的变量。理论上如此您可以运行$db->\uu construct()
,因为它仍然是一个方法,但只有在完全创建对象之后才能运行
只需创建一个方法来返回如下字符串
<?php
class DBFactory {
function toEcho() {
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db->toEcho();
?>
这样做真的很愚蠢,但正如你想知道的那样
class DBFactory
{
function whatAmI()
{
return 'I am DBFactory';
}
}
$MyOBJECT = new DBFactory;
echo $MyOBJECT->whatAmI();
您可以使用uuu-toString-magic方法获取要回显的uuu构造
或者你也可以不使用uu_u-toString魔法方法就直接获得Metod。有很多方法可以选择其中一种
class DBFactory{
function __construct()
{
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db->__construct();
您可以使用uuu-toString魔术方法来获得要回显的uu构造
或者你也可以不使用uu_u-toString魔法方法就直接获得Metod。有很多方法可以选择其中一种
class DBFactory{
function __construct()
{
return 'Need to echo';
}
}
$db = new DBFactory();
echo $db->__construct();
你到底想完成什么?你到底想完成什么?如果没有传递参数,括号是可选的。括号只是参数请求者,仅此而已。如果没有传递参数,括号是可选的。括号只是参数请求者,没有任何m俄勒冈州@RobertPitt什么?谁说是这样的?@RobertPitt这将按照OP在他的例子中所期望的方式工作。:o)但可能是因为错误的原因。@deceze操作人员没有说他想在实例化时返回任何内容。事实上,他没有说太多。我只是告诉他如何才能得到他试图实现的结果。你可能想直接告诉Robert(他走了),在这一点上,我已经同意你的观点。我只是说OP可能因为错误的原因而期望它工作。\u toString
可能就是OP所期望的(据我们所知)。为什么会投反对票?@RobertPitt什么?谁说的?RobertPitt这会按照OP在他的例子中期望的方式工作。:o)也许是因为错误的原因。@deceze操作没有说他想在实例化时返回任何东西。事实上,他没说多少。我只是告诉他如何才能得到他想要达到的结果。你可能想把这个指向罗伯特(他走了),在这一点上我已经同意你了。我只是说OP可能会因为错误的原因而期望它工作。\u toString
可能是OP所寻找的(据其所知)。为什么要投否决票?我认为@Artefactor的解决方案在OO环境下更好,但这实际上取决于你到底想做什么@你可以在这里完全省略构造函数。另外,您正在那里寻找->
接线员。谢谢,这就是我的电话号码