zuluniner / secsql
此包已被废弃且不再维护。未建议替代包。
简单的PDO SQL查询库
dev-master
2019-05-28 10:27 UTC
Requires
- php: >=7.0
This package is auto-updated.
Last update: 2022-09-28 17:59:23 UTC
README
通过PHP PDO安全且简单访问SQL的方法
在PHP中引入包
也可以通过包含/要求 composer autoload.php 来实现
<?php require_once("../secsql.php"); use ZuluNiner\SecSQL;
SECSQL\Query
按顺序从左到右的参数
必需
$SecSQL = new SecSQL("localhost","3306","username","password","database");
ZuluNiner\SECSQL->Select()
按顺序从左到右的参数
必需
- $table
非必需:列出默认值
- $columns = null
$select = $query->Select("users")->Execute(); $select = $query->Select("users",['username'])->Execute(); //Retreives only the username $select = $query->Select("users",['username','pass_hash'])->Execute(); //Retreives only the username and pass_hash
ZuluNiner\SECSQL->Insert()
按顺序从左到右的参数
必需
- $table
- $columnValues
$insert = $query->Insert("users",["username"=>"test","pass_hash"=>password_hash("something",PASSWORD_BCRYPT)])->Execute();
ZuluNiner\SECSQL->Update()
按顺序从左到右的参数
必需
- $table
- $columnValues
$update = $query->Update("users",["username"=>"test2","pass_hash"=>password_hash("newsomething",PASSWORD_BCRYPT)])->Execute();
ZuluNiner\SECSQL->Where()
按顺序从左到右的参数
必需
- $table
- $columnValues
$update = $query->Update("users",["username"=>"test2"])->Where(["username","=","test"])->Execute(); $update = $query->Update("users",["username"=>"test2"])->Where(["username","LIKE","%test%"])->Execute(); $update = $query->Update("users",["username"=>"test2"])->Where([["username","=","test","AND"],["id","=",1]])->Execute(); $update = $query->Update("users",["username"=>"test2"])->Where([["username","=","test","OR"],["id","=",1]])->Execute(); $update = $query->Update("users",["username"=>"test2"])->Where([["username","=","test","OR"],["id","=",1],["active"=>1]])->Execute(); //This will add an "OR" between the first and second where clauses and will add an "AND" between the second and third clauses automatically
ZuluNiner\SECSQL->OrderBy()
按顺序从左到右的参数
必需
- $columnsOrder
$select = $query->Select("users")->OrderBy(['username','ASC'])->Execute(); $select = $query->Select("users")->OrderBy([['username','ASC'],['active'=>'DESC']])->Execute();
ZuluNiner\SECSQL->Limit
按顺序从左到右的参数
必需
- $number
非必需:列出默认值
- $startAfter = 0
$select = $query->Select("users")->OrderBy(['username','ASC'])->Limit(1)->Execute(); $select = $query->Select("users")->OrderBy(['username','ASC'])->Limit(5)->Execute(); $select = $query->Select("users")->OrderBy(['username','ASC'])->Limit(5,1)->Execute(); //This will retrieve the second through sixth entry skipping the first
更新计划
+ 在执行()的替代方案中添加 One() 和 All()
这将允许开发者指定他们想要一个条目还是所有条目,而不必每次都使用限制