ThinkPHP框架简单应用之mysql增删改查

    xiaoxiao2021-03-25  119

    ThinkPHP是为了简化企业级应用开发和敏捷WEB应用开发而诞生的,ThinkPHP可以支持windows/Unix/Linux等服务器环境,正式版需要PHP5.0以上版本支持,支持MySql、PgSQLSqlite多种数据库以及PDO扩展。

    thinkphp框架命名规范

    使用ThinkPHP开发的过程中应该尽量遵循下列命名规范:

    1、类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php;

    2、类的命名空间地址和所在的路径地址一致,例如 Home\Controller\UserController类所在的路径应该是 Application/Home/Controller/UserController.class.php;

    3、确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写);

    4、类名和文件名一致(包括上面说的大小写一致),例如 UserController类的文件命名是UserController.class.php, InfoModel类的文件名是InfoModel.class.php, 并且不同的类库的类命名有一定的规范;

    5、函数、配置文件等其他类库文件之外的一般是以.php为后缀(第三方引入的不做要求);

    6、函数的命名使用小写字母和下划线的方式,例如 get_client_ip;

    7、方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 getUserName,_parseType,通常下划线开头的方法属于私有方法;

    8、属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName、_instance,通常下划线开头的属性属于私有属性;

    9、以双下划线“__”打头的函数或方法作为魔法方法,例如 __call 和 __autoload;

    10、常量以大写字母和下划线命名,例如 HAS_ONE和 MANY_TO_MANY;

    11、配置参数以大写字母和下划线命名,例如HTML_CACHE_ON;

    12、语言变量以大写字母和下划线命名,例如MY_LANG,以下划线打头的语  言变量通常用于系统语言变量,例如 CLASS_NOT_EXIST

    13、对变量的命名没有强制的规范,可以根据团队规范来进行;

    14、ThinkPHP的模板文件默认是以.html 为后缀(可以通过配置修改);

    15、数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name字段是正确写法,类似 _username 这样的数据表字段可能会被过滤。

    下面以ThinkPHP2.0为例,结合Mysql数据库实现简单的增删改查,重在thinkphp框架的使用方法,布局先凑合着看。

                                  一、建立数据库wtyy,在wtyy中建立数据表think_csdn: 二、 1.建立一个PHP工程_ThinkPHP,将下载的ThinkPHP复制到工程根目录中,结构如下: 2.在工程根目录下编写入口文件index.php: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <?php define('THINK_PATH', 'ThinkPHP'); define('APP_NAME', '_ThinkPHP'); define('APP_PATH', '.'); require(THINK_PATH."/ThinkPHP.php"); App::run(); ?> 运行后浏览器显示如下: 而此时的目录则显示如下所示,即为ThinkPHP的目录自动生成功能: 3.定位到Conf目录下的config.php文件,这是ThinkPHP的总配置文件,在这里完成数据库的配置: <?php return array( 'APP_DEBUG'=>false,     'DB_TYPE'=>'mysql', 'DB_HOST'=>'localhost', 'DB_NAME'=>'wtyy', 'DB_USER'=>'root', 'DB_PWD'=>'****', 'DB_PORT'=>'3306', 'DB_PREFIX'=>'think_'  //数据表的前缀 ); ?> 4.定位到Lib/Action目录下,这是ThinkPHP的控制器,重写IndexAction.class.php文件里面的方法,实现增删改查功能: <?php // 本类由系统自动生成,仅供测试用途 class IndexAction extends Action{ //查     public function index(){//入口         /*header("Content-Type:text/html; charset=utf-8");         echo "<div style='font-weight:normal;color:blue;float:left;width:345px;text-align:center;border:1px solid silver;background:#E8EFFF;padding:8px;font-size:14px;font-family:Tahoma'>^_^ Hello,欢迎使用<span style='font-weight:bold;color:red'>ThinkPHP</span></div>";   */      $db=M('csdn');  //不含表前缀 $all=$db->select();  //查询所有 $se=$db->where('name="梧桐烟雨"')->select();   //条件查询 $this->assign('all',$all); $this->assign('se',$se); $this->display();      }        //删     public function delete(){         /*header("Content-Type:text/html; charset=utf-8");         //echo "<div style='font-weight:normal;color:blue;float:left;width:345px;text-align:center;border:1px solid silver;background:#E8EFFF;padding:8px;font-size:14px;font-family:Tahoma'>^_^ Hello,欢迎使用<span style='font-weight:bold;color:red'>ThinkPHP</span></div>";   */     $db=M('csdn');   $db->where('name="梧桐烟雨" and age=18')->delete(); $this->display();    }    //增        public function add(){        /*  header("Content-Type:text/html; charset=utf-8");         echo "<div style='font-weight:normal;color:blue;float:left;width:345px;text-align:center;border:1px solid silver;background:#E8EFFF;padding:8px;font-size:14px;font-family:Tahoma'>^_^ Hello,欢迎使用<span style='font-weight:bold;color:red'>ThinkPHP</span></div>";    */      $dba=M('csdn'); $dba->Create();  $data['name']='梧桐烟雨'; $data['age']=18; $re=$dba->add($data); $this->display();      }         //改     public function update(){         //header("Content-Type:text/html; charset=utf-8");         //echo "<div style='font-weight:normal;color:blue;float:left;width:345px;text-align:center;border:1px solid silver;background:#E8EFFF;padding:8px;font-size:14px;font-family:Tahoma'>^_^ Hello,欢迎使用<span style='font-weight:bold;color:red'>ThinkPHP</span></div>";     $db=M('csdn');   $data['name']='梧桐烟雨'; $db->where('age=20')->save($data); $this->display();    } } ?>

          注:这里需要注意的是,需要删除Runtime\Data\_fields里面的文件,否则向数据库插入的都是空值。

    5.定位到Tpl\default目录下,因为上面的控制内容是在IndexAction.class.php中写的,所以在default下新建Index目录,在里面写上相应的模板.html文件用于输出。即先对应目录名,再对应文件名。

    首先看入口模板index.html:

    <center> <b>查询所有人信息</b><br> <volist name='all' id='csdn'> 姓名:{$csdn.name}<br> 年龄:{$csdn.age}<hr> </volist><br><br> <b>查询姓名为 梧桐烟雨 的所有人信息</b><br> <volist name='se' id='csdn'> 姓名:{$csdn.name}<br> 年龄:{$csdn.age}<hr> </volist> <br><br> <a href="__URL__/add">增加信息:梧桐烟雨 18岁</a><br> <a href="__URL__/delete">删除信息:梧桐烟雨 18岁</a><br> <a href="__URL__/update">更改信息:梧桐烟雨 20岁</a> </center>

    增加信息add.html:

    <body> 添加成功 </body>

    删除信息delete.html:

    <body> 删除成功 </body>

    更改信息update.html:

    <body> 更改成功 </body>

    以上是ThinkPHP交互mysql的基本使用方法,感谢浏览!

    转载请注明原文地址: https://ju.6miu.com/read-20219.html

    最新回复(0)