zoukankan      html  css  js  c++  java
  • ThinkPHP5.1中数据查询使用field方法数组参数起别名时遇到的问题

    首先数据库基本查询是没有问题的

    <?php
    
    namespace appindexcontroller;
    use thinkDb;
    
    class Demo5
    {
        //1.单条查询
        public function find()
        {
            $res = Db::table('customers')
                ->field('Name,CustomerID')
                ->where('CustomerID', '=', 1)
                ->find();
            dump(is_null($res) ? '没有找到' : $res);
        }
    
    }
    

     返回结果为:

    但是当field参数为数组,需要给字段起别名时:

    <?php
    
    
    namespace appindexcontroller;
    use thinkDb;
    
    class Demo5
    {
        //1.单条查询
        public function find()
        {
            $res = Db::table('customers')
    //            ->field('Name,CustomerID')
                ->field(['CustomerID'=>'顾客编号'])
                ->where('CustomerID', '=', 1)
                ->find();
            dump(is_null($res) ? '没有找到' : $res);
        }
    
    }
    

     却报了以下错误:

    (修改字段为中文时才会出现该错误,小白看不懂报错...)查询手册发现,还有另外一种起别名的方法:

    <?php
    
    
    namespace appindexcontroller;
    use thinkDb;
    
    class Demo5
    {
        //1.单条查询
        public function find()
        {
            $res = Db::table('customers')
    //            ->field('Name,CustomerID')
    //            ->field(['CustomerID'=>'顾客编号'])
                ->field('CustomerID as 顾客编号')
                ->where('CustomerID', '=', 1)
                ->find();
            dump(is_null($res) ? '没有找到' : $res);
        }
    
    }

    结果成功运行:

    不禁好奇:是不支持数组参数起别名了吗?还是说我哪里配置的不正确?

  • 相关阅读:
    linux时间同步ntp服务的安装与配置
    linux系统的初化始配置
    透明手机
    linux桌面的安装
    Linux中FTP服务器的搭建教程
    Linux怎样创建FTP服务器--修改用户默认目录-完美解决
    linux下vsftpd的安装及配置
    vsftpd快速部署_2018_lcf
    史上最详细的vsftpd配置文件详解2
    史上最详细的vsftpd配置文件讲解
  • 原文地址:https://www.cnblogs.com/sfriend/p/10649016.html
Copyright © 2011-2022 走看看