我正在学习PHP课程,我完全坚持其中一项任务。
我坚持的一点是:
“PalprimeChecker [仅为此任务创建的函数] 对象具有一个名为number的属性。此任务包含两部分。首先,为该属性赋值17 ....” p>
我写的代码返回错误,不会让我继续...
include('class.palprimechecker.php');
$checker = new PalprimeChecker();
$checker->number = '17';
echo "The number " . "$checker";
echo "(is|is not)";
echo " a palprime.";
我完全不确定这个问题。有人知道分配这个值的正确方法吗?
希望你能帮助我撕裂我的头发!
谢谢!
答案 0 :(得分:8)
修改:
echo "The number " . "$checker";
由此:
echo "The number " . $checker->number;
你试图打印整个对象(如果没有为它创建方法是不可能的,请检查orangePill的答案),你想要做的只是在对象内打印数字。
另请注意,在分配号码时不需要使用引号。它可能会在以后引起问题。您应该像这样分配它:
$checker->number = 17;
答案 1 :(得分:2)
您还可以在PalprimeChecker类上添加__toString方法。
public function __toString(){
return (string)$this->number;
}
这将允许echo "The number " . $checker;
生成一个字符串。
答案 2 :(得分:1)
小心连接。
<?php
include("class.palprimechecker.php");
$checker = new PalprimeChecker;
$checker->number = 17;
echo "The number" . $checker->number . "";
echo "(is|is not)";
echo " a palprime.";
?>
答案 3 :(得分:0)
嗯, 分配字符串,而不是数字。
$checker->number = 17; //Note that there are no quotes around '17'.