ThinkPHP

thinkphp5 给CSS JS 添加版本号

只愿长相守 提交于 2020-12-01 02:11:35
1 1.在/ public /index. php中定义APP_STATIC路径: 2 3 define ('APP_STATIC',__DIR__.'/../public/static/' ); 4 5 6 7 8 2.在/application/common. php中定义时间戳函数: 9 10 function stamp( $file ){ 11 $path =APP_STATIC. $file ; 12 return "/static/". $file ."?tid=". filemtime ( $path ); 13 } 14 15 16 17 3. 在模板文件中如下使用: 18 19 <link type="text/css" rel="stylesheet" href="{:stamp('css/list.css')}"/> 20    来源: oschina 链接: https://my.oschina.net/u/4379890/blog/4000831

thinkphp5 表达式

夙愿已清 提交于 2020-11-30 23:35:56
官方文档:https://www.kancloud.cn/manual/thinkphp5/135182 查询表达式 版本 新增功能 5.0.9 比较运算增加闭包子查询支持 5.0.4 支持对同一个字段多次调用查询方法 查询表达式支持大部分的SQL查询语法,也是 ThinkPHP 查询语言的精髓,查询表达式的使用格式: where( '字段名', '表达式', '查询条件'); whereOr( '字段名', '表达式', '查询条件'); 表达式不分大小写,支持的查询表达式有下面几种,分别表示的含义是: 表达式 含义 EQ、= 等于(=) NEQ、<> 不等于(<>) GT、> 大于(>) EGT、>= 大于等于(>=) LT、< 小于(<) ELT、<= 小于等于(<=) LIKE 模糊查询 [NOT] BETWEEN (不在)区间查询 [NOT] IN (不在)IN 查询 [NOT] NULL 查询字段是否(不)是NULL [NOT] EXISTS EXISTS查询 EXP 表达式查询,支持SQL语法 > time 时间比较 < time 时间比较 between time 时间比较 notbetween time 时间比较 表达式查询的用法示例如下: EQ :等于(=) 例如: where( 'id', 'eq',100); where( 'id', '=',100);

thinkphp5的$this->fetch()

南楼画角 提交于 2020-11-30 23:25:52
参考: https://blog.csdn.net/fight_tianer/article/details/78602711 http://www.thinkphp.cn/topic/38624.html https://www.kancloud.cn/manual/thinkphp5/118114 模板:网页长什么样子。 模板文件:html 模板渲染:打开或加载数据到html文件。 thinkphp5的模板渲染有两种情况: a、继承了think\Controller 用return $this->fetch(); b、没有继承think\Controller 用return view(); 其中 $this->fetch()和view()的用法一样 以第二种为例,对其进行分析 1、无参数。return view(); 此时会自动定位模板文件: 当前模块/默认视图目录(view)/以当前控制器(小写)为名的目录/当前方法(小写).html application/index(当前模板)/view(默认视图文件夹)/login(文件夹,与控制器同名,不过小写)/index.html(当前方法.html) 2、有参数。 a、return view(‘edit’);//跨模板渲染文件。模板渲染文件(edit.html) 此时会自动定位模板文件: 当前模块/默认视图目录(view)

在线教育软件开发方案要侧重哪方面

陌路散爱 提交于 2020-11-23 08:23:50
当代,我们的生活节奏不断加快,逐渐进入了快消费时代,在线教育软件顺应时代潮流而走进大家的视野中,与传统教育方式相比,在线教育提高了我们的学习效率,让我们在更短的时间内学到各种知识,提高我们的能力。所以深受用户喜爱,在线教育软件开发商看到了发展的契机,纷纷顺势而上。 在线教育软件开发开发能够使教育机构大大减少推广费用,免费在线捕捉到新商机,全自动检索潜在的学员,轻轻松松制定全部教学环节,并按照地域,课程内容和学员自身的的要求考虑所有模式的学习培训的要求状况。 现阶段,在线教育软件开发的兴起大部分集中在婴幼儿早教和外语学习行业。这一数据依然大部分与海外相关,但排行较高的大部分是国内申请办理。那么,在线教育软件开发的开发方案是怎样的呢?要侧重哪方面呢? 在线教育软件开发方案要侧重哪方面 1、要实现准确定位 在线教育APP开发准确定位十分关键,适时升级和推新课标,新课标等信息内容发掘潜在用户。APP开发公司在在线教育APP开发时要充分的掌握学员的要求。它们的主要目标是为学员带来更多的更合适的学习方式,鼓励孩子的自学能力,让其喜欢上学习培训,积极开展学习培训。 2、无论是任何时间地点都能调整学习的方法 你都能够随时开启智能手机学习培训。在学习培训中,能够报名参加很多互动交流活动内容,提高记忆力,增强学习效率。了解在线教育APP开发带来的內容,打破相同性。在线教育软件开发应当主题鲜明

PHP 中 include 和 require 的区别详解

两盒软妹~` 提交于 2020-11-21 23:16:49
require() 语句的性能与 include() 相类似,都是包括并运行指定文件。除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误,终止脚本运行;而include 只产生警告(E_WARNING),脚本会继续运行。 【1】include和require都是语句结构(并不是函数)!!! 在php官网手册上是划分到了流程控制,这两个语句结构不是函数。 详情可参考 http://php.net/manual/zh/function.include.php 所以,它可以不加圆括号,直接加引号来包含文件。我习惯不加圆括号。 1 include '01_var.php' ; 2 或者 3 include ('01_var.php' ); 4 或者 5 require '01_var.php' ; 6 或者 7 require ('01_var.php'); 2】对于处理失败的方式不同(最主要的区别) 对于引入的文件找不到情况下。(这里确保当前文件夹下面不存在no.php) 在01_include_require文件下编写如下代码: include 'no.php'; echo 'End!';//会输出    include 生成一个警告(E_WARNING),在错误发生后脚本会继续执行。 1 require 'no.php' ; 2

php页面静态化

时光毁灭记忆、已成空白 提交于 2020-11-21 03:24:18
页面静态化 1、在开发项目时,有时会遇到一些页面数据量特别大,但是又不经常改变的情况,如商城首页等,这时候就需要进行页面静态化,减轻服务器和数据库的压力。 这里我们先用原生的PHP写一个简单的demo,用来理解页面静态化的原理,然后再尝试用框架说明一下(thinkphp)。 主要会使用到PHP的ob相关函数和文件操作函数file_put_contents. 这里在项目中新建了两个文件,test.php(控制器),muban.php(模板) test.php <?php if(file_exists("match.html") && (time()-filemtime("match.html"))<300) { //如果存在对应的静态文件,则直接访问 require_once("match.html"); }else{ //这里用数组来仿真数据库操作,现实一般都是操作数据库得到对应数据 $student = array("huangxing","chenyuwei",'xufei','zhangjingwen','xuepei'); ob_start(); //载入模板 require_once("muban.php"); file_put_contents("match.html",ob_get_clean()); require_once('match.html'); }  

tp5.0.7 修复getshell漏洞

我怕爱的太早我们不能终老 提交于 2020-11-02 05:53:41
这里 接手项目用的是 tp5.0.7 突然想到前段事件的tp bug 事件 就试了下 发现确实有这种情况 参考帖子: https://bbs.ichunqiu.com/thread-48687-1-1.html https://blog.csdn.net/Bul1et/article/details/85319468 本地测试的时候 到 &function=call_user_func_array&vars[0]=system&vars[1][]=id 的时候 nginx 出现了一个报错 没有成功进行复现 但是 前面的 invokefunction 方法确实是已经进到了 call_user_func_array 函数也已经执行了 官方提供的修复姿势: https://blog.thinkphp.cn/869075 PHPTutorial\WWW\tp5.0.7\thinkphp\library\think\App.php 358行左右 module 方法中   if (! preg_match ('/^[A-Za-z](\w|\.)*$/', $controller )) { throw new HttpException(404, 'controller not exists:' . $controller ); } 测试 修复完成 报错 这里 应该就是修复完成了吧 和 tp5

免费领CRMEB移动社交电商系统源码与授权

狂风中的少年 提交于 2020-10-30 16:15:17
移动电商风起云涌,直播带货重塑销售模式,传统商业更是举步维艰,各行各业转型移动电商迫在眉睫,拥有一款好的移动社群社交电商系统成为众多企业与商家的心病! 你曾是否被那些劣质的移动电商系统搞得心力憔悴? 也曾被Saas平台收取 高昂年费 ,想法难实现,辛辛苦苦运营的用户数据,支付数据甚至资金留存数据都要经过他们的“水池”而耿耿于怀,整日担心他们删库跑路被折磨的食不下咽,夜不能寐? 又曾为高昂的 定制开发 而付出巨额成本,开发 周期长 一拖再拖,迟迟无法上线,系统 不 能长时间 稳定 运行,功能简陋,不能实时升级而丧失诸多良机? 还曾被使用 盗版 源码而承担的法律风险,运营风险遏制住了发展的步伐而捶胸顿足,追悔不已? 还是否在为某些框架系统加密 无法二开 ,售后服务响应慢,隐形消费多,不能持续升级维护而不满? 现在,假如有一款 价格优惠 ,功能齐全, 源码开源 ,正版 永久授权 ,持续升级维护, 轻松二开 ,营销功能丰富, 一天 内可快速部署 上线 的纯源码版H5端与小程序端数据互通的商城系统 免费给你 ,你要不要?省下的几十上万块买源码的钱做运营他不香吗? CRMEB单商户商城打通版 基于Thinkphp6.0+vue+mysql+redis开发,前后台全部采用前后端分离式开发。前端框架为uni-app,多端合一,首页页面后台可视化编辑操作,后台采用iview框架。 系统功能强大

ThinkPHP自定义验证器+PHP新特性use的使用,让代码书写更舒服

旧城冷巷雨未停 提交于 2020-10-29 11:08:15
贴极端关键代码 业务代码 /** * 批量新增用户 * @return false|string */ public function batchAddUser() { //验证请求参数 (new BatchAddUser())->runCheck(); // 启动事务 Db::startTrans(); foreach ($this->args['user_list'] as $index => $user) { //验证用户信息 (new BatchAddUserForUserInfo())->runCheck(function () { Db::rollback(); }, $user, true); //添加用户 if (!is_numeric($user['key'])) { continue; } $newUser = UserClient::create($user); //验证认证信息 $continuFlag = false; (new BatchAddUserForUserQualification())->runCheck(function ($error) use ($continuFlag) { $continuFlag = true; }, $user, false); //忽略认证信息错误,可继续添加用户 if ($continuFlag)

PHP 开源工作流引擎 新版简介

北城以北 提交于 2020-10-29 11:02:35
TpFlow工作流引擎是一套规范化的流程管理系统,基于业务而驱动系统生命力的一套引擎,我们命名位工作流引擎。流引擎的存在是为了彻底释放整个信息管理系统的的活力,让系统更具可用性,智能应用型,便捷设计性。而Tpflow团队的存在是为了打造中国最优秀的PHP工作流引擎。 TpFlow工作流引擎3.2正式版目前基于Thinkphp5.1版本,4.0-Dev版本将基于Thinkphp6.0版本及支持Composer.。截止目前,我们已经服务数百企业,为企业的信息化带去飞翔的翅膀。 功能特性 系统截图 系统演示 http://tpflow.cojz8.com/index.php 来源: oschina 链接: https://my.oschina.net/guoguo2016/blog/4693436