TP5使用百度ueditor富文本编辑器
百度富文本在tp5框架中的使用 从数据表获取的数据包含了html标签样式,前端输出并执行html标签 1{:html_entity_decode($content)} 纯文本输出,不保留样式 1{:strip_tags(htmlspecialchars_decode($Info.case_content))} 纯文本输出,保留样式 1{$Info.content|raw}
tp5数据查询方式
thinkPHP5中的Db::name 和 dB::table 以及 db(‘’) 的区别 Db::name()如果数据库中的表统一了表前缀,在application/database.php中的也写明prefix => ‘前缀_’ 就可以使用12Db::name('user')->where(['id'=>1])->select();//数据库中的表名为 fa_user Db::table()使用这个必须指定完整的表名12Db::tale('fa_user')->where(['id'=>1])->select();//数据库中的表名为 fa_user db(‘’)助手函数12db('user')->where(['id'=>1])->select();//数据库中的表名为 fa_user 注意:该助手函数占用服务器资源db(‘user’) 默认情况下,每次请求都会重新连接数据库,这样会占用服务器资 ...
正则表达式的知识总结
table th:first-of-type { width: 100px; } 一、简介1. 什么是正则表达式正则表达式(Regular Expression)就是用某种模式去匹配一类字符串的一种公式。 正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串。 正则表达式是繁琐的,但它是强大的,学会之后的应用会让你除了提高效率外,会给你带来绝对的成就感。只要认真阅读本教程,加上应用的时候进行一定的参考,掌握正则表达式不是问题。 许多程序设计语言都支持利用正则表达式进行字符串操作。 2. 正则表达式的作用分割,查找,匹配,替换字符串 3. PHP中的正则表达式在PHP中有两套正则表达式函数库,两者功能相似,只是执行效率略有差异: 一套是由 PCRE(Perl Compatible Regular Expression) 库提供的。使用“preg”为前缀命名的函数;一套由 POSIX(Portable Operating System Interface of Unix )扩展提供的。使用以“ereg”为前缀命名的函数; PCRE来源于Perl语言,而Perl是 ...
数据库基本知识(一)
mysql中,索引,主键,唯一索引,联合索引的区别索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。 普通索引(由关键字KEY或INDEX定义的索引)的唯一任务是加快对数据的访问速度。 普通索引允许被索引的数据列包含重复的值。如果能确定某个数据列将只包含彼此各不相同的值,在为这个数据列创建索引的时候就应该用关键字UNIQUE把它定义为一个唯一索引。也就是说,唯一索引可以保证数据记录的唯一性。 主键,是一种特殊的唯一索引,在一张表中只能定义一个主键索引,主键用于唯一标识一条记录,使用关键字 PRIMARY KEY 来创建。 索引可以覆盖多个数据列,如像INDEX(columnA, columnB)索引,这就是联合索引。 对数据库的性能的影响索引可以极大的提高数据的查询速度,但是会降低插入、删除、更新表的速度,因为在执行这些写操作时,还要操作索引文件。 数据库中的事务事务(transaction)是作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完 ...
Hexo NexT主题中集成gitalk评论系统
gitalk:一个基于 Github Issue 和 Preact 开发的评论插件详情Demo可见:https://gitalk.github.io/ 一、Register Application在GitHub上注册新应用,链接:https://github.com/settings/applications/new 参数说明:Application name: # 应用名称,随意Homepage URL: # 网站URL,如https://heyiki.github.ioApplication description # 描述,随意Authorization callback URL:# 网站URL,https://heyiki.github.io 点击注册后,页面跳转如下,其中Client ID和Client Secret在后面的配置中需要用到,到时复制粘贴到第七步的操作即可 二、新建theme/主题名称/layout/_third-party/comments/gitalk.swig文件,并添加内容:12345678910111213141516{% if page. ...
PHP基本知识
echo、print_r、print、var_dump之间的区别 echo、print是php语句,var_dump和print_r是函数 echo 输出一个或多个字符串,中间以逗号隔开,没有返回值是语言结构而不是真正的函数,因此不能作为表达式的一部分使用 print也是php的一个关键字,有返回值 只能打印出简单类型变量的值(如int,string),如果字符串显示成功则返回true,否则返回false* print_r 可以打印出复杂类型变量的值(如数组、对象)以列表的形式显示,并以array、object开头,但print_r输出布尔值和NULL的结果没有意义,因为都是打印”\n”,因此var_dump()函数更适合调试 var_dump() 判断一个变量的类型和长度,并输出变量的数值 常见的HTTP状态码: 200 - 请求成功 301 - 资源(网页等)被永久转义到其他URL 404 - 请求的资源(网页等)不存在 505 - 内部服务器错误 HTTP状态码分类: 1** - 信息,服务器收到的请求,需要请求者继续执行操作 2** - 成功,操作被成功接收并处理 3** ...
数据库mysql 的两种连接方式以及操作
mysql基础PHP 5 及以上版本建议使用以下方式连接 MySQL : MySQLi extension (“i” 意为 improved) PDO (PHP Data Objects) 我是该用 MySQLi ,还是 PDO? 如果你需要一个简短的回答,即 “你习惯哪个就用哪个”。MySQLi 和 PDO 有它们自己的优势:PDO 应用在 12 种不同数据库中, MySQLi 只针对 MySQL 数据库。所以,如果你的项目需要在多种数据库中切换,建议使用 PDO ,这样你只需要修改连接字符串和部分查询语句即可。 使用 MySQLi, 如果不同数据库,你需要重新编写所有代码,包括查询。两者都是面向对象, 但 MySQLi 还提供了 API 接口。两者都支持预处理语句。 预处理语句可以防止 SQL 注入,对于 web 项目的安全性是非常重要的。 连接 MySQL实例 (MySQLi - 面向对象)1234567891011121314<?php$servername = "localhost";$username = "username&quo ...
数据库三范式
第一范式1NF是对属性的原子性,要求属性具有原子性,不可再分解; 表:字段1、 字段2(字段2.1、字段2.2)、字段3 ……如学生(学号,姓名,性别,出生年月日),如果认为最后一列还可以再分成(出生年,出生月,出生日),它就不是一范式了,否则就是; 第二范式2NF是对记录的惟一性,要求记录有惟一标识,即实体的惟一性,即不存在部分依赖; 表:学号、课程号、姓名、学分;这个表明显说明了两个事务:学生信息, 课程信息;由于非主键字段必须依赖主键,这里学分依赖课程号,姓名依赖与学号,所以不符合二范式。 第三范式3NF是对字段的冗余性,要求任何字段不能由其他字段派生出来,它要求字段没有冗余,即不存在传递依赖; 表: 学号, 姓名, 年龄, 学院名称, 学院电话因为存在依赖传递: (学号) → (学生)→(所在学院) → (学院电话) 。 正确做法:学生:(学号, 姓名, 年龄, 所在学院);学院:(学院, 电话)。
PHP判断请求的客户端
请求接口的客户端类型判断123456789101112$userAgent = $_SERVER['HTTP_USER_AGENT'];if (preg_match("/(iPod|iPad|iPhone)/", $userAgent)){ $type = 1; //IOS客户端}elseif (preg_match("/WP/", $userAgent)){ $type = 2; //WinPhone客户端}elseif (preg_match("/android/i", $userAgent)) { $type = 3; //android客户端}
迅搜-接口配置
关于php编写app搜索接口Xunsearch是一个开源免费、高性能、多功能简单易用的专业全文检索技术方案,官方文档写的对新手不太友好,只能慢慢琢磨,以下是我稍微整理的资料 迅搜手册迅搜官网文档迅搜w3school手册关于安装,请看迅搜官网文档。 关于迅搜配置项目目录下会有xunsou这个文件夹,其目录下有app文件夹,里面就是配置搜索的索引,文件名后缀是.ini结尾,其结构1234567891011121314project.name = 项目名(最好是数据库的表名)project.default_charset = utf-8server.index = 127.0.0.1:8383server.search = 127.0.0.1:8384[表id]type = id[表title字段名]type = title[add_time]type = numeric 其中tokenizer分词器是很重要的,比如一个字作分词xlen([1]) ,项目配置详解。 编写api接口1234567891011121314151617public function search_club() ...