【问题标题】:OOP PHP - potential classes for a simple accounting / financial systemOOP PHP - 简单会计/财务系统的潜在类
【发布时间】:2014-07-06 13:29:30
【问题描述】:

我对 PHP 中的 OOP 有点陌生(但对 Java 中的 oop 有很好的理解),并想建立一个简单的会计系统来跟踪业务费用和收入(通过销售某些服务产生)并产生每月资产负债表(收入-费用)。

mysql 数据库非常简单,有以下表格:

user - login_id(pk), name, pass etc
customer - id(pk), name, tel etc
income - bill_no(pk), cust_id, description, date, amount etc
expense - receipt_no(pk), description, date, amount

我已经在以下文件方面取得了重大进展(我只是展示了基本结构)

config.php
----------
    class DB_Class {
        function __construct() {
          //connect to db or die
        }
    }

functions.php
-------------
    class User{
        public function __construct() {
            new DB_Class();
        }
        public function register_user(params){
        }
        public function check_login(params){
        }
        public function get_session(){
        }
        public function user_logout(){
        } 
    }

registration.php
----------------
//html form
//new User() -> register_user(params)

login.php
---------
//new User() ->get_session()
//new User() ->check_login()

index.php
---------
//check session

我的问题是,这种系统的其他基本/必须/潜在文件、类及其方法是什么?我知道它根据系统设计而有很大差异,但是在这个阶段,任何反馈/建议对我来说都是非常有价值的意见。

【问题讨论】:

  • 您是否已经定义了关系?
  • @kingkero 是的,我做到了,感谢提及,客户和收入之间的简单关系,但现在不是问题,我只想知道我可以编写哪些类和方法来插入和显示收入/支出数据
  • 不要在一个文件中堆叠多个类。每个文件使用一个类,根据类命名,然后自动加载。见PSR-0

标签: php mysql oop object accounting


【解决方案1】:

functions.php - 用户类文件的奇怪名称,称之为 user.php。如果您在一个文件中保存多个类,请将它们分开。

可能的扩展:您可能希望将支出和收入抽象化,然后专门化具体的收入和支出。

您可能还希望有一个类来为出售的服务建模。

注意 - 如果您想向客户授予系统访问权限,可能会发生冲突 - 您在 Customer 和 User 类之间存在重叠。

这些只是一些提示,如果没有关于域规则、系统限制、设计等的更多信息,很难说出更多信息。

【讨论】:

    猜你喜欢
    • 2010-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-25
    • 2011-01-02
    • 2012-05-05
    • 2013-06-12
    相关资源
    最近更新 更多