热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

ThinkPHP的后缀操作方法配置罢工了

我添加了一个方法list{代码...}OK报错了然后去配置后缀{代码...}给系统关键字的方法添加后缀{代码...}OK我再去打开浏览器大家思考一下会出现什么情况对应该是会继续报错非法操作index但是实际上没有报错...

我添加了一个方法 list

";
    }
    public function index(){//index()方法  public
//        echo '
Hello Think PHP'; // $cOnfig=C('');//读取全部配置项 // dump($config);//dump()是ThinkPHP的函数用来打印变量的 echo "index
"; } public function _after_index(){//定义后置操作 echo "index.after
"; } public function list(){//注意系统关键字会报错 echo "list"; } }

OK报错了
然后去配置后缀

'配置值'
    /* 数据库设置 */
    'DB_TYPE'               =>  'mysql',     // 数据库类型
    'DB_HOST'               =>  'localhost', // 服务器地址
    'DB_NAME'               =>  'jike',          // 数据库名
    'DB_USER'               =>  'user',      // 用户名
    'DB_PWD'                =>  '123',          // 密码
    'DB_PORT'               =>  '3306',        // 端口
    'DB_PREFIX'             =>  'jikexueyuan',    // 数据库表前缀
    'LOAD_EXT_CONFIG'       =>  'user,upload',

    /* 应用设定 */
    'ACTION_SUFFIX'         =>  'Action', // 操作方法后缀
);

给系统关键字的方法添加后缀

";
    }
    public function index(){
//        $cOnfig=C('');
//        dump($config);
        echo "index
"; } public function _after_index(){ echo "index.after
"; } public function listAction(){ echo "list"; } }

OK我再去打开浏览器
大家思考一下会出现什么情况
对应该是会继续报错
非法操作index

但是实际上没有报错非法操作index
而且很正常的运行着
你看前置后置也是正常的???

为什么?
怎么和课程有出入
不知道是不是我疏忽了什么
单是我真心仔细检查了都没发现是什么原因
刚入门求解惑

回复内容:

我添加了一个方法 list

";
    }
    public function index(){//index()方法  public
//        echo '
Hello Think PHP'; // $cOnfig=C('');//读取全部配置项 // dump($config);//dump()是ThinkPHP的函数用来打印变量的 echo "index
"; } public function _after_index(){//定义后置操作 echo "index.after
"; } public function list(){//注意系统关键字会报错 echo "list"; } }

OK报错了
然后去配置后缀

'配置值'
    /* 数据库设置 */
    'DB_TYPE'               =>  'mysql',     // 数据库类型
    'DB_HOST'               =>  'localhost', // 服务器地址
    'DB_NAME'               =>  'jike',          // 数据库名
    'DB_USER'               =>  'user',      // 用户名
    'DB_PWD'                =>  '123',          // 密码
    'DB_PORT'               =>  '3306',        // 端口
    'DB_PREFIX'             =>  'jikexueyuan',    // 数据库表前缀
    'LOAD_EXT_CONFIG'       =>  'user,upload',

    /* 应用设定 */
    'ACTION_SUFFIX'         =>  'Action', // 操作方法后缀
);

给系统关键字的方法添加后缀

";
    }
    public function index(){
//        $cOnfig=C('');
//        dump($config);
        echo "index
"; } public function _after_index(){ echo "index.after
"; } public function listAction(){ echo "list"; } }

OK我再去打开浏览器
大家思考一下会出现什么情况
对应该是会继续报错
非法操作index

但是实际上没有报错非法操作index
而且很正常的运行着
你看前置后置也是正常的???

为什么?
怎么和课程有出入
不知道是不是我疏忽了什么
单是我真心仔细检查了都没发现是什么原因
刚入门求解惑

我想你是不是理解错了:

例如,如果设置:
'ACTION_SUFFIX'=>'Act'
那么访问某个模块的add操作对应读取模块类的操作方法则由原来的add方法变成addAct方法。

意味着你在index后面添加Action和不添加,他都会去找实际控制器里面的index方法,因为入口文件会根据你的方法名称匹配是否存在Action字符串,找不到就会去找这个字符串的名称对应的方法!
这样是避免了特殊命名公用报错的问题

推荐阅读
  • 2023年最新指南:如何在PHP中屏蔽警告和错误
    本文详细介绍了如何在PHP中屏蔽警告和错误,包括多种方法和最佳实践,帮助开发者提升代码质量和安全性。 ... [详细]
  • http:blog.csdn.netzeo112140articledetails7675195使用TCPdump工具,抓TCP数据包。将数据包上传到PC,通过Wireshark查 ... [详细]
  • 本文为初学者提供了一条清晰的学习路线,帮助他们逐步成长为优秀的Web开发人员。通过十个关键步骤,涵盖从基础到高级的各个方面,确保每位学习者都能找到适合自己的学习方向。 ... [详细]
  • centos 7.0 lnmp成功安装过程(很乱)
    下载nginx[rootlocalhostsrc]#wgethttp:nginx.orgdownloadnginx-1.7.9.tar.gz--2015-01-2412:55:2 ... [详细]
  • 本文详细介绍如何在忘记MySQL服务器密码的情况下进行密码重置,包括具体的步骤和注意事项。 ... [详细]
  • Spring Boot + RabbitMQ 消息确认机制详解
    本文详细介绍如何在 Spring Boot 项目中使用 RabbitMQ 的消息确认机制,包括消息发送确认和消息接收确认,帮助开发者解决在实际操作中可能遇到的问题。 ... [详细]
  • PHP函数的工作原理与性能分析
    在编程语言中,函数是最基本的组成单元。本文将探讨PHP函数的特点、调用机制以及性能表现,并通过实际测试给出优化建议。 ... [详细]
  • 本文讲述了一位80后的普通男性程序员,尽管没有高学历,但通过不断的努力和学习,在IT行业中逐渐找到了自己的位置。从最初的仓库管理员到现在的多技能开发者,他的职业生涯充满了挑战与机遇。 ... [详细]
  • 本文详细介绍了MySQL故障排除工具及其使用方法,帮助开发者和数据库管理员高效地定位和解决数据库性能问题。 ... [详细]
  • Python学习day3网络基础之网络协议篇
    一、互联网协议连接两台计算机之间的Internet实际上就是一系列统一的标准,这些标准称之为互联网协议,互联网的本质就是一系列网络协议。二、为什么要有互联网协议互联网协议就相当于计 ... [详细]
  • 本文详细介绍了如何在Windows操作系统中通过Samba服务访问Red Hat Linux中的资源,包括配置Samba服务器、设置工作组名称、添加用户和共享目录等步骤。 ... [详细]
  • 图数据库与传统数仓实现联邦查询使用CYPHER实现从关系数据库过滤时间序列指标一、MySQL得到研报实体在Oracle中的唯一ID二、Oracle中过滤时间序列数据三、CYPHER ... [详细]
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 在尝试将 mysqldump 文件加载到新的 MySQL 服务器时,遇到因使用保留关键字 'table' 导致的语法错误。 ... [详细]
  • 从零开始编译Linux系统:第16章 全新起点
    本章将详细介绍如何从零开始编译一套完整的Linux系统,涵盖关键组件如glibc库的介绍及其重要性。通过本文,读者将了解从源代码构建Linux系统的全过程。 ... [详细]
author-avatar
mobiledu2502938445
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有