我在学校学习PHP,每个人都有这个不工作
问题描述:
我们对我们的服务器和html/css/php文件使用MAMP。我已经加倍检查了一切,并确保这确实没有错误。它以本地主机错误结束。这意味着它不会显示我的工作。这是我的工作:我在学校学习PHP,每个人都有这个不工作
- main.php -
<?php
require 'person.php'
$person = new Person;
$person->name = 'Froggy';
$person->age = '15';
echo $person->sentence();
?>
--- person.php ---
<?php
class Person {
public $name;
public $age;
public function sentence() {
return $this->name . 'is' . '$this->age' . ' years old';
}
}
?>
因此,这个简单的代码会告诉我“ '青蛙'是'15岁'但它不会工作。帮帮我?
答
解析错误:
添加分号这里
require 'person.php';
再次,改变功能:
public function sentence() {
return $this->name . ' is ' . $this->age . ' years old';
}
问题是,$this->age
是有它周围的单引号。
单引号内的变量不被解析,它被称为变量插值。
但是,双引号内的变量可以被解析。
输出:
Froggy is 15 years old
答
删除引号$this->age
:
<?php
class Person {
public $name;
public $age;
public function sentence() {
return $this->name . 'is' . $this->age . ' years old';
}
}
答
如果你想在你输出的报价,你可以在你的函数返回此:
return "'$this->name' is '$this->age' years old";
上述代码中主要存在一些错误require行之后缺少的分号。你一定要尝试访问服务器的PHP错误日志,否则你会碰到更多这样的问题。 – iainn
你能提供一个“它不会工作”的解释吗? –
首先,检查'http:// localhost /'或'http:// localhost:8080 /'是否正常工作,它应该显示MAMP的默认网站。如果它不显示默认站点,请确保Apache **已启动/正在运行。 – dbf