如何将值设置为类的变量并显示它?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将值设置为类的变量并显示它?相关的知识,希望对你有一定的参考价值。
在我的项目中,我定义了一个Test类。
这个类只有__construct函数,这是Test类的代码:
<?php
namespace model;
public class Test {
private $db;
protected $fields;
public $variables;
public function __construct($data = array()) {
if ($this->fields && $data) {
foreach ($data as $k => $d) {
if (!in_array($k, $this->fields)) {
unset($data[$k]);
}
}
}
$this->variables = $data;
}
}
现在我想使用这个类,这是我的html代码:
<body style="height:100%" >
<?php
include "o1ws1v/class/model/Test.php";//include class file
$test_model = new modelTest();
$test_model->xie="zuo";
echo $test_model->xie;
?>
</body>
但不幸的是,它失败了。控制台中没有显示任何内容。
我测试过:
var_dump($test_model);
它也什么也没做。
我想为Test类的变量赋值并显示它。
谁能帮我?
答案
使用您的代码,您将收到错误
PHP Parse错误:语法错误,意外的'public'(T_PUBLIC),期待文件结束...
从public
类中删除Test
关键字:
<?php
namespace model;
class Test {
private $db;
protected $fields;
public $variables;
public function __construct($data = array()) {
if ($this->fields && $data) {
foreach ($data as $k => $d) {
if (!in_array($k, $this->fields)) {
unset($data[$k]);
}
}
}
$this->variables = $data;
}
}
另一答案
我认为你必须将公共类更改为只有类,这部分代码应该正常工作。
<?php
namespace model;
class Test {
private $db;
protected $fields;
public $variables;
public function __construct($data = array()) {
if ($this->fields && $data) {
foreach ($data as $k => $d) {
if (!in_array($k, $this->fields)) {
unset($data[$k]);
}
}
}
$this->variables = $data;
}
}
以上是关于如何将值设置为类的变量并显示它?的主要内容,如果未能解决你的问题,请参考以下文章