了解类属性

时间:2015-05-15 15:18:58

标签: php

我仍然在尝试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吗? 类应该具有破坏功能吗?或者我可以再次打电话给新班级吗?感谢。

1 个答案:

答案 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”)的“控制器”。

这是简单的信息,但是当涉及到模型时,我无法告诉你实际上有多少想到它,所以随着时间的推移你会想要对这些事情做一些研究,以便在你想要的东西上变得更好要做;)

祝你好运;)