嗨我正在尝试开发一个oop php驱动的博客.我是php的oop方式的新手,所以它的速度很慢.我有一个BlogPost类,我已经在他的博客字段中为他们创建了私有变量,并为他们创建了getter和setter示例:
function getCreated() {
return $this-$created;
}
function setCreated($created) {
$this->$created = $created;
}
Run Code Online (Sandbox Code Playgroud)
这是这样做的方法吗?!我认为我在正确的轨道上,但我不确定.有没有人有任何意见?!也许有关如何创建博客oop php风格的好教程的一些提示.在net.tuts找到一个,但我真的不喜欢它.谢谢!
问候
你很亲密,试试吧
function getCreated() {
return $this->created;
}
function setCreated($created) {
$this->created = $created;
}
Run Code Online (Sandbox Code Playgroud)
就个人而言,我避免使用getter和设置,只使用公共属性.然后我使用__set()magic方法侦听正在设置的属性并将密钥添加到私有$dirty数组.然后我可以在保存记录时循环这些.例如:
class BlogPost {
public $id;
public $title;
public $content;
private $dirty;
function __set($key, $value) {
$this->$key = $value;
$this->dirty[] = $key;
}
function save() {
if (isset($this->id) && intval($this->id) > 0) {
// do UPDATE query
} else {
// do INSERT query
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后使用:
$id = (isset($_GET['id'])) ? intval($_GET['id']) : null;
$post = new BlogPost();
$post->title = $_POST['title'];
$post->content = $_POST['content'];
$post->save();
Run Code Online (Sandbox Code Playgroud)
非常原始,但应该让你知道如何为自己实现这个理论.
| 归档时间: |
|
| 查看次数: |
1718 次 |
| 最近记录: |