为PHP对象属性赋值

时间:2013-07-15 21:07:03

标签: php

我正在学习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.";

我完全不确定这个问题。有人知道分配这个值的正确方法吗?

希望你能帮助我撕裂我的头发!

谢谢!

4 个答案:

答案 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'.