PHP_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> PHP >>列表
· Thinkphp实现排序和置顶发布时间:2018-04-08
【前言】后台需要添加排序和置顶操作,所以自己想了一个方案来实现。如有误解请指正【主体】(1)排序操作思路一般来说都是按照发布时间排序。时间戳大的靠前,所以用倒序desc,而不是asc$model->order('addtimedesc')->select();(2)置顶操作思路:点击置顶时,修改数据库addtime字段值为当前时间即可。因为排序是按照时间戳排列的<ahref="__CONTROLLER__/sort/id/{$vol.id}">置顶</a>... 查看全文
【前言】本文总结下PHP几个防SQL注入攻击自带函数区别【主体】SQL注入攻击是黑客攻击网站最常用的手段。如果你的站点没有使用严格的用户输入检验,那么常容易遭到SQL注入攻击。SQL注入攻击通常通过给站点数据库提交不良的数据或查询语句来实现,很可能使数据库中的纪录遭到暴露,更改或被删除。为了防止SQL注入攻击,PHP自带一个功能可以对输入的字符串进行处理,可以在较底层对输入进行安全上的初步处理,也即MagicQuotes。(php.inimagic_quotes_gpc)... 查看全文
【前言】本文总结下与PHP字符串转义相关的配置和函数【主体】与PHP字符串转义相关的配置和函数如下:1.magic_quotes_runtime2.magic_quotes_gpc3.addslashes()和stripslashes()4.mysql_escape_string()5.addcslashes()和stripcslashes()6.htmlentities()和html_entity_decode()7.htmlspecialchars(... 查看全文
· ThinkPHP的系统常量发布时间:2018-04-06
系统常量:当前项目名类似__ROOT__网站根目录地址__APP__当前项目(入口文件)地址__GROUP__当前分组的URL地址__URL__当前模块的URL地址__ACTION__当前操作的URL地址__SELF__当前URL地址__INFO__当前的PATH_INFO字符串APP_NAME当前项目名GROUP_NAME当前分组名MODULE_NAME当前模块名ACTION_NAME当前操作名... 查看全文
【前言】刚刚准备测试---翻----墙---操作,需要删除session数据,官方查阅了下文档,这里记录下。不过莫名多了许多关键词,所以发下参考链接:php中如何找到session的保存位置【拓展】谈谈敏感词现在基本上所有的网站都需要设置敏感词过滤,这似乎已经成了一个网站的标配,如果你的网站没有,或者你没有做相应的处理,那么小心相关部门请你喝茶哦。关于web网站的敏感词过滤的实现,这里做下记录,有时间再做研究吧... 查看全文
LNMP(linux+nginx+mysql+php)服务器环境配置实战笔记作为新手,肯定是需要linux+nginx+mysql+php这套环境来实验一些东西的,LNMP(国外又叫LEMP,nginx+e的简称E),但是网上的中文教程乱七八糟的,今天我就来分享一个不错的快速集成环境安装包吧。ps:国外教程的话要GoogleLEMP了。好了,开始今天的教程了:首先,系统要求是:CentOS/RadHat/Fedora、Debian/Ubuntu/Raspbian/DeepinVPS操作开始:... 查看全文
· ThinkPHP中M方法与D方法区别发布时间:2018-04-04
【前言】本文总结下ThinkPHP中M方法与D方法区别,以下均为个人见解。如有误解请指正【主体】(一)个人见解:M()方法参数可选,有参数时表示实例化父类模型的同时关联上参数对应的数据表;若不传参,则表示实例化父类模型D()方法分两种情况,有参数时表示实例化自定义模型,没有参数时表示实例化父类模型注意:一般的CURD操作,用M方法实例化父类模型即可。除非父类模型的需求满足不了开发,需要自定义模型。例如附件的表单在提交时分两种①附件的保存入库$_FILES获取,具体过程写到模型里... 查看全文
· PHP的5大运行模式发布时间:2018-04-04
【前言】总结下PHP的5大运行模式主体PHP的运行模式(5大运行模式):(1)CGI模式(通用网关接口);(2)FastCGI模式(常驻型CGI);(3)CLI(命令行运行);(4)Web模块模式(Apache等Web服务器运行的模式);(5)ISAPI模式(5.3版本后不再支持)注意:现在用的环境集成包的模式为Web模块模式,工作开发中常用FastCGI常驻型模式综上,rewrite模式需要Apache支持,一般不推荐使用。除了Apache外,还有nginx,lightd等。.... 查看全文
· thinkphp获取ip地址及位置信息发布时间:2018-04-03
(1)前言在我使用thinkphp类库IpLocation方法getLocation时,发现获取到信息为空.分析查询后得知,原因是在框架中没有加载地址库UTFWry.dat,可以在构造方法中看到__construct($filename="UTFWry.dat"),需要下载文件,解压后得到UTFWry.dat,把文件放在$this->fp=fopen(dirname(__FILE__).'/'.$filename,'rb')... 查看全文
分享自脚本之家:http://www.jb51.net/article/52578.htm在ThinkPHP中有许多使用简便的单字母函数(即快捷方法),可以很方便开发者快速的调用,但是字母函数却不方便记忆,本文将所有的字母函数总结一下,以方便以后查找。1.U()URL组装支持不同URL模式?1U($url='',$vars='',$suffix=true,$domain=false)@paramstring$urlURL表达式,格式:'[模块/控制器/操作#锚点@域名]?参数1=值1&... 查看全文
· PHP随机数rand和mt_rand区别发布时间:2018-03-27
rand()和mt_rand()作用都是产生一个随机整数,都有两种使用形式:1.intrand(void)/intmt_rand(void)2.intrand(int$min,int$max)/intmt_rand($min,$max)对第一种形式:rand()产生的随机数为0到getrandmax()之间mt_rand()产生的随机数为0到mt_getrandmax()之间对第二种形式:rand()产生从$min到$max之间的随机数mt_rand()产生从$min到$max之间的随机数对比... 查看全文
· PHP函数积累发布时间:2018-03-27
【前言】本文记录下PHP常遇到的函数,随着应用的深入以后不断完善【主体】(1)array_keys()函数返回包含数组中所有键名的一个新数组。如果提供了第二个参数,则只返回键值为该值的键名<?php$a=array("Volvo"=>"XC90","BMW"=>"X5","Toyota"=>"Highlander");print_r(array_keys($a));?>(2)array_values()返回数组的所有值<?php$a=array... 查看全文
· PHP的8种数据类型发布时间:2018-03-27
【前言】本文主要总结下PHP的8种数据类型【主体】在PHP中,一共支持八种原始数据类型:它们是4种标量类型,boolean(布尔型),integer(整型),float(浮点型)和string(字符串型);两种符合类型,array(数组)和object(对象);两种特殊类型,resource(资源)与空值(null)。PHP中变量的数据类型通常不是由程序员设定的,准确的说,是PHP根据该变量使用的上下文在运行时决定的,简单的说就是,我们不需要设定变量的数据类型,PHP会自动识别。(1... 查看全文
· PHP命名空间发布时间:2018-03-27
【前言】本文总结下PHP命名空间相关知识点【主体】多个人开发项目,函数名很容易重复。用了类之后,类之间的方法名被类分开,重名也没关系。但是当项目更大时,类名也有可能重复。此时就要用到命名空间,来避免重名。注意:①命名空间语句必须顶行,且之前不可以有任何输出案例:<?phpnamespacename;//命名空间---相当于创建了一个文件夹include'two.php';classTest1{publicfunction__construct(){echo"666";}}newTest1... 查看全文
· PHP接口详解发布时间:2018-03-26
【前言】本文总结下PHP接口相关知识点【主体】(1)接口的概念抽象类可以理解为”类的模板”,接口则是”方法模板”。接口粒度更小,用于描述通用的方法。<?phpinterfacefly1{publicfunctionfly($oil,$height);}interfacerun1{publicfunctionrun($speed,$width);}interfacewater1{publicfunctionwater($depth);}//声明一个类... 查看全文
· PHP自动加载原理发布时间:2018-03-26
【前言】本文记录下PHP自动加载的原理和相关应用【主体】应用场景:实例化某个类时,如MySQL,需要先require()。如果类比较多,目录也就比较多,require引入文件时将显得很麻烦。这时需要一个自动化的解决方案----自动加载。应用案例:thinkPHP里经常遇到类名与文件名一致,这便用到了自动加载功能。代码解析:<?phpfunctionmyload($class){//这里$class为实例化的类名echo$class."?";}//注册一个函数为自动触发函数-... 查看全文
· PHP单例模式发布时间:2018-03-26
【前言】本文总结下PHP单例模式相关【主体】单例模式简单理解:单例就是类只能被实例化一次,只能得到一个对象购物商场用到单例模式思路:按步骤分为1.创建普通类;2.保护构造方法,封装起来(保护后不能调用);3.所以要在封装后在内部调用,从而实现对外开放一个接口;4.设为静态,移除控制权,从而不实例化调用;5.添加判断;6.final禁止继承单个实例对象,即只能实例化一个对象①普通类的实例<?phpclassSingle{public$rand... 查看全文
· PHP类的封装发布时间:2018-03-25
【前言】本文总结下类的封装性【主体】类的封装性封装性:类中的某些方法或属性不允许外部调用可以通过开放部分接口来间接调用,写个简单例子<?phpclassHuman{//方法名和类名一致时会被理解为构造方法publicfunctionaa(){echo"调用1";}publicfunction__construct(){//通过调用构造函数来间接调用方法aa()$this->aa();//我是内部调用}}$a=newHuman();//我是外部调用?>类似于ATM机... 查看全文
· PHP知识点补漏发布时间:2018-03-25
【前言】本文记录下漏掉的PHP相关知识点【主体】(1)foreach循环$name=array('one','two','three');foreach($nameas$key=>$value){echo"$key:$value<br>";}这里有两种写法,还有一种不带键值对的。没什么区别,第一种在遍历的时候会将每个值赋给$value,第二种除了赋值给$value,还会将键名赋值给$name$name=array('one','two','three');foreach... 查看全文
· PHP面向对象基础发布时间:2018-03-25
【前言】本文总结下面向对象的基础知识点,大概有以下几个①类的声明;②属性的声明;③方法的声明;④对类进行实例化出一个对象;⑤this伪变量【主体】<?php//对象的声明,将函数放到对象里classoneclass{//方法functionone(){echo"666";}}//实例化对象$class=newoneclass();//函数调用$class->one();?>(1)属性和方法将变量赋值放到类中,便成为了属性;将函数放到类里,便成了方法属性和方法的调用:<... 查看全文