Rumah  >  Artikel  >  pembangunan bahagian belakang  >  一个快速构建PHP ORM类的工具:ORMBuilder

一个快速构建PHP ORM类的工具:ORMBuilder

WBOY
WBOYasal
2016-06-20 12:50:00986semak imbas

一个快速构建PHP ORM类的工具

Requirement

  • PHP 5.4 + (PDO support)
  • Linux Shell / Windown cmd

Last ChangeLog [2015-08-22]

  • 版本调整为 v1.2.0 Beta
  • 调整生成命名逻辑,保持所有文件名/类名与驼峰命名一致
  • 增加U选项保持兼容
  • 选项L弃用
  • 调整部分处理逻辑及删除判断为冗余的代码
  • 修复其它一些已知的问题

Command [区分大小写]

PHP cli模式使用 '+', Shell模式使用 '-', 建议使用Shell模式

  • fModel Class保存路径, 默认保存在gorm.php相应目录下的BuildResult文件夹下
  • eModel Class父类 (未开启命名空间,'\' 以 '_' 代替)
  • iModel Class类所需接口类 (未开启命名空间,'\' 以 '_' 代替)
  • xModel Class文件后缀名, 默认 php
  • lModel Class文件名/类名是否保留下划线, 默认 false
  • LModel Class方法名是否保留下划线, 默认 true [弃用]
  • mModel Class命名类型, 默认 1,1. %sModel 2. Model%s 3.%s_Model 4. Model_%s
  • NModel Class的命名空间,默认 \
  • FModel Class能支持写final关键字, 默认 false
  • U文件名/类名所有 _ 分隔单词首字母大写,否则仅第一单词首字母大写, 默认 true
  • o是否开启命名空间, 默认 true
  • d从Config中读取的数据库配置,默认 false
  • T设置N个空格替代一个TAB,为0时将以TAB出现,不替换, 默认 4
  • u连接mysql用户名,使用此项 +d 将失效
  • p连接mysql密码,使用此项 +d 将失效, 不建议直接在命令行输入密码
  • h连接mysql主机, 默认 127.0.0.1
  • P连接mysql主机端口, 默认 3306
  • n连接mysql数据库名
  • O数据库驱动选项处理, 多个时用 ',' 分隔
  • t指定Build的表名,多个时用 ',' 分隔
  • H显示帮助

Example

  • 使用Shell模式

sudo ln -s /home/www/OrmBuild/gorm /usr/bin/gorm

gorm -f "/home/gsinhi/models" -e "\Base\Model\AbstractModel" -u root -p -n test_orm

  • 指定保存路径

php -f gorm.php +f /home/gsinhi/testOrm

  • 指定数据库

php -f gorm.php +f /home/gsinhi/testOrm +u test +p +n test_orm

  • 关闭命名空间

php -f gorm.php +f /home/gsinhi/testOrm +o false

  • 示例配置 Config/Db.php
namespace Config;class Db extends \Config\ConfigAbstract {    public function init() {        return array(            'host'     => '127.0.0.1',            'dbname'   => 'test',            'username' => 'test',            'passwd'   => 'test',            'port'     => '3306',            'options'  => array("SET NAMES 'utf8'")        );    }}

项目主页:http://www.open-open.com/lib/view/home/1440401020497

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn