面向对象select方法
<?php
class Table{
protected $tablename;
protected $arrTable;
protected $w='';//条件属性
protected $field="*";//查询字段
protected $order="";
function __construct($arrTable=''){
$this->tablename=get_class($this);//获取获取当前的对象名
$this->arrTable=$arrTable;
}
function insert(){
echo $this->insertTable();
}
private function insertTable(){
$keys="(";
$values="(";
foreach ($this->arrTable as $key => $value) {
$keys.=$key.",";
$values.="'".$value."',";
}
$keys=substr($keys, 0,-1).")";
$values=substr($values,0,-1).")";
return "insert {$this->tablename} {$keys} values {$values}<br>";
}
function del(){
if ($this->w!=''){//表示没有条件
$delstr="delete from {$this->tablename} where {$this->w}";
}else{
$delstr="delete from {$this->tablename}";
}
echo $delstr."<br>";
}
function where($w=''){
$this->w=$w;
}
function update(){
$updateData="";
foreach ($this->arrTable as $key => $value) {
$updateData.=$key."=".$value.",";
}
$updateData=substr($updateData,0,-1);
if ($this->w=="") {
echo "update {$this->tablename} set {$updateData} <br>";
}else{
echo "update {$this->tablename} set {$updateData} where {$this->w}<br>";
}
}
function select(){
if ($this->w==""){
$select="select {$this->field} from {$this->tablename} {$this->order}";
}else{
$select="select {$this->field} from {$this->tablename} where {$this->w} {$this->order}";
}
echo $select."<br>";
}
//查询字段
function field($field="*"){
$this->field=$field;
}
//排序
function order($order=''){
$this->order=$order;
}
}
/**
*
*/
class User extends Table
{
}
/**
*
*/
class Article extends Table
{
}
/**
*
*/
class Student extends Table
{
}
$Datas=array("username"=>"admin","userpass"=>'admin');
$user1=new User($Datas);
$user1->insert();
$Datas=array("title"=>"admin","author"=>'admin');
$a=new Article($Datas);
$a->insert();
$a->where("title='清远'");
$a->del();
$a->update();
$Datas = array('id' =>'001' ,'name'=>'zhangsan' );
$s1=new Student($Datas);
$s1->insert();
$s1->field("title,author");
$s1->select();
// $iswhere=""
?>
面向对象select方法的更多相关文章
- C# DataTable的Select()方法不支持 != 判断
异常描述: 用户代码未处理 System.Data.SyntaxErrorException HResult=-2146232032 Message=无法解释位置 23 的标记“!”. Source= ...
- [c#基础]DataTable的Select方法
引言 可以说DataTable存放数据的一个离线数据库,将数据一下加载到内存,而DataReader是在线查询,而且只进形式的查询,如果后退一步,就不可能了,DataTable操作非常方便,但也有缺点 ...
- js面向过程改写成面向对象--通用方法
响亮的标题:一个万能的,保底的.面向过程改写成面向对象的方法 前提朗读:很多刚接触js面向对象的时候都不知道如何能快速的写出一个面向对象的程序,这个是必然的现象,不是每一位学js的一上来就会写面向对象 ...
- HTML DOM select() 方法
定义和用法 select() 方法用于选择该元素中的文本. 语法 textareaObject.select() 实例 下面的例子可选择文本框中的文本: <html> <head&g ...
- Thinkphp中的volist标签(查询数据集(select方法)的结果输出)用法简介
参考网址:http://camnpr.com/archives/1515.html 通常volist标签多用于查询数据集(select方法)的结果输出,通常模型的select方法返回的结果是一个二维数 ...
- js面向对象+一般方法的选项卡
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- getField()和select()方法的区别
在ThinkPHP中,查询数据库是必不可少的操作. 那么,getField()方法和select()方法都是查询的方法,到底有什么不同呢? 案例来说明: A.select()方法 例子1 $acces ...
- PHP面向对象-----魔术方法
PHP面向对象-----魔术方法 __get($name)--触发时机:当调用一个不访问的成员属性的时候,会自动触发,可以利用这个方法来完成对不可调用的属性进行调用,但是不能设置值 ___set($n ...
- input和textarea标签的select()方法----选中文本框中的所有文本
JavaScript select()方法选中文本框中的所有文本 <input>和<textarea>两种文本框都支持select()方法,这个方法用于选择文本框中的所有文本 ...
随机推荐
- 三维计算机视觉 — 中层次视觉 — Point Pair Feature
机器人视觉中有一项重要人物就是从场景中提取物体的位置,姿态.图像处理算法借助Deep Learning 的东风已经在图像的物体标记领域耍的飞起了.而从三维场景中提取物体还有待研究.目前已有的思路是先提 ...
- 获取当前目录绝对路径,参考canal run.sh里面的方式
case "`uname`" in Darwin) bin_abs_path=`cd $(dirname $0); pwd` ;; Linux) bin_abs_path=$(re ...
- Java课程课堂测试05
大致要求:将十道计算题输出至TXT文件,再读取文件至控制台,然后在控制台中输入答案并评判对错 我在大致的要求当中已经将我的设计思路体现了出来 首先,实现计算题的设计,第二步要对计算题循环,将答案存到一 ...
- Python学习之旅(十九)
Python基础知识(18):面向对象高级编程(Ⅰ) 使用__slots__:限制实例的属性,只允许实例对类添加某些属性 (1)实例可以随意添加属性 (2)某个实例绑定的方法对另一个实例不起作用 (3 ...
- nginx 禁止恶意域名解析
server { listen default_server; server_name _; ssl on; ssl_certificate /etc/nginx/cert/aaaa.pem; ssl ...
- 20175320 2018-2019-2 《Java程序设计》第1周学习总结
20175320 2018-2019-2 <Java程序设计>第1周学习总结 教材学习内容总结 本周学习了教材的第一章内容.在这一章中,我了解了Java这门编程语言的特点和地位,而本章的重 ...
- ios 11越狱移除
https://baijiahao.baidu.com/s?id=1593748369421662278&wfr=spider&for=pc 不越狱抹机步骤: 点击设置 进入自带游览 ...
- Vue Watch 的原理 和 $nextTick() 通俗理解
网上watch和$nextTick()解释比较复杂,涉及到promise,h5的dom发生变化的新api等复杂代码,下列就是两个参考. [watch原理] [$nextTick()] 首先,看遇到问题 ...
- ZBX_NOTSUPPORTED: Cannot obtain filesystem information: [13] Permission denied
zabbix有默认两条自动发现规则,其中一条是自动发现已挂载文件系统,但笔者的三个挂载文件系统中两个监控成功了,一个失败 agentd端挂载情况: 仔细研究sdb1的挂载点,发现它是挂载在xiami用 ...
- python练习题-day9
2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def dan_index(itter): li=[] for i in range(len(itte ...