我仍然在尝试PHP课程,我想在创造坏习惯之前确认一些事情。
在函数外部设置属性时...该变量将用于多个函数? 有什么区别如果我在一个类中设置一个变量并像那样传递它?
E.g。
class myClass{
private $variable;
public function __construct() {
// I will set the class variable.
}
public function use(){
//I will use the class variable or I will set a variable myself.
}
}
我是否对如何使用类属性有了正确的认识?
假设我从表单中检索用户数据并将这些值保存为类属性,然后我可以使用这些属性在稍后阶段将用户添加到DB吗? 类应该具有破坏功能吗?或者我可以再次打电话给新班级吗?感谢。
答案 0 :(得分:2)
根据您的情况,您可以拥有一个类,其中只有一个实例可以存在,但您不必担心这个
(首先进入它并尝试在潜入之前了解事情而没有任何不正当的理由)
在课程中,您可以决定如何构建布局。 根据您个人喜欢的结构类型和使用最佳实践的结构,您将使用典型的设计模式和代码指南来帮助您(您可以在PHP处找到它们,它们被称为PSR - google it;)
您不确定的是具体情况。
如果你有一个一次创建多个用户的表单(非常不逻辑但是想要了解它)并且你希望将它提交给你的PHP后端,那么一个合乎逻辑的方法就是创建一个小类或对象只有属性。
这看起来像是:
class Person {
public $name;
public $surname;
public $age;
}
你在这里要做的是创建一个至少具有这些属性的一致对象。
然后可以将这个小对象加载到您的主类中,例如:
class User {
public function saveUser(Person $person) {
// do something to $person->name etc...
}
}
你在这里做的是使用来自对象的函数调用,插入另一个对象(人)作为参数并在那里进行操作。
但不限于此。 例如,您可以创建一个Person对象数组并将它们循环到数据库中。
这种方式允许您创建所需的对象,但可以减少创建全新对象的开销。
您只需将它们拆分为具有定义属性的“模型”,以及操作模型,创建,读取,更新和删除(“CRUD”)的“控制器”。
这是简单的信息,但是当涉及到模型时,我无法告诉你实际上有多少想到它,所以随着时间的推移你会想要对这些事情做一些研究,以便在你想要的东西上变得更好要做;)
祝你好运;)