我想从文件表中提取有关文件的所有信息,但该表的结构可能会更改。您可以在PHP的类方法中定义类变量吗?
所以,我想从表中提取所有字段名称,并使用它们来生成包含信息的类变量,然后将选定的数据存储到它们。
这可能吗?
我想从文件表中提取有关文件的所有信息,但该表的结构可能会更改。您可以在PHP的类方法中定义类变量吗?
所以,我想从表中提取所有字段名称,并使用它们来生成包含信息的类变量,然后将选定的数据存储到它们。
这可能吗?
样品
<?php
class TestClass
{
public $Property1;
public function Method1()
{
$this->Property1 = '1';
$this->Property2 = '2';
}
}
$t = new TestClass();
$t->Method1();
print('<pre>');
print_r($t);
print('</pre>');
?>
输出
TestClass Object
(
[Property1] => 1
[Property2] => 2
)
如您所见,未定义的属性仅通过使用对$this
的引用进行分配而创建。所以是的,你可以在类方法中定义类变量。
是的,你可以看到PHP的重载。
http://php.net/manual/en/language.oop5.overloading.php
快速实施例:(不可这也不是很大的用法)
<?php
class MyClass{
var $my_vars;
function __set($key,$value){
$this->my_vars[$key] = $value;
}
function __get($key){
return $this->my_vars[$key];
}
}
$x = new MyClass();
$x->test = 10;
echo $x->test;
?>
可能相关:http://stackoverflow.com/questions/6643132/store-variables-from-mysql-select-to-php-class-variables-more-efficiently-when-th/6643211#6643211 – SteAp
你可以只要写'$ this-> someVar ='foo';'它应该可以工作。 – Tower