Welcome 微信登录

首页 / 网页编程 / PHP

深入解读php中关于抽象(abstract)类和抽象方法的问题分析

深入解读php中关于抽象(abstract)类和抽象方法的问题分析

在面向对象(OOP)语言中,一个类可以有一个或多个子类,而每个类都有至少一个公有方法作为外部代码访问的接口。而抽象方法就是为了方便继承而引入的,现在来看一下抽象类和抽象方法分别是如何定义以及他们的特点。什么是抽象方法?我们在类里面定义的只有方法名没有方法体的方法就是抽象方法,所谓没有方法体就是在方法声明的时候没有大括号以及其中的内容,而是直接声明时在方法名后加上分号结束,另外在声明抽象方法时还要加一个关键字"abstract"来修饰。1、抽象关键字 :ab...
浅析ThinkPHP中的pathinfo模式和URL重写

浅析ThinkPHP中的pathinfo模式和URL重写

复制代码 代码如下:http://serverName/appName/module/action/id/1/这个就是pathinfo模式在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如:复制代码 代码如下:http://serverName/appName/module/action/year/2008/month/09/day/21/通常的...
PHP面向对象之旅:深入理解static变量与方法

PHP面向对象之旅:深入理解static变量与方法

static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”。如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个冒号“::”调用。static关键字可以用来修饰变量、方法。不经过实例化,就可以直接访问类中static的属性和static的方法。static 的属性和方法,只能访问static的属性和方法,不能类访问非静态的属性和方法。因为静态属性和方法被创建时,可能还没有任何这...
有关于PHP中常见数据类型的汇总分享

有关于PHP中常见数据类型的汇总分享

PHP 数据类型 PHP 支持八种原始类型(type)。 四种标量类型: string(字符串) integer(整型) float(浮点型,也作 double ) boolean(布尔型) 两种复合类型: array(数组) object(对象) 两种特殊类型: resource(资源) NULL(空) 查看变量类型 通过 gettype() 函数可以方便的查看某个变量的类型: 复制代码 代码如下: <?php$var_bool = TRUE; /...
PHP中如何实现常用邮箱的基本判断

PHP中如何实现常用邮箱的基本判断

越来越多的网站希望用户使用邮箱进行注册,或者是绑定邮箱,这时候就要对邮箱的正确性进行确认,有的人采用发送邮件进行激活的方式来进行判断,从而激活一个账户,但是存在一个问题就是,在邮件发送出去之前,用户的基本信息已经存在于数据库中了,如果是个错误的邮箱或者是恶意多注册账户,那就会造成非活动账号太多,占用数据库存储空间,这边就需要在之前就进行这些邮箱的过滤,因此作者写下下面的一个方法用来过滤邮箱。 复制代码 代码如下: /** * @todo 用户输入安全性检测...
php加密解密实用类分享

php加密解密实用类分享

用户注册的密码一般不会明文保存,总得加个密先。最简单的当然是在数据库sql语句中调用md5函数加密用户密码。这里介绍一个加解密类。如果你想在用户忘记密码时为他或她找回原来的密码,那么这个类是个好用的工具。当然,这个加解密类也可用于其他用途。复制代码 代码如下:<?phpclass crypt { private $skey; public function __construct($key) { $this->skey = hash("md5"...
PHP中替换键名的简易方法示例详解

PHP中替换键名的简易方法示例详解

YII框架中封装好了的数据库操作函数,默认输出的时候,将数据库字段名作为数组的键名进行输出,但是有些时候带有键名的数据不能够满足未知情况下的操作,譬如:数据库数据导出为EXCEL等比较非正常的操作。 所以这边需要对数据库结果集进行解析,下面就是针对这种特殊情况的一个简单方法: 复制代码 代码如下: /** * @todo 针对YII 查询输出带有数据库表字段名键名进行优化EXCEL表格输出 * @todo 替换键名为0、1、2... * @param ar...
PHP中实现生成静态文件的方法缓解服务器压力

PHP中实现生成静态文件的方法缓解服务器压力

互联网快速普及的现在社会,越来越多的人会在一个web应用上进行交流,因而导致服务器与数据库访问压力与日俱增,这边就需要进行一些优化,譬如增加缓存、二级缓存、动态网页静态化以及其他的高端技术。 此处作者是使用生成静态文件的方法: 复制代码 代码如下: /** * @desc 生成静态文件时使用 * @todo htmlcache * @param $root string html文件存放路径 * @param $rule string html文件命名规则...
PHP中执行MYSQL事务解决数据写入不完整等情况

PHP中执行MYSQL事务解决数据写入不完整等情况

近来稍有时间研究了下MYSQL中的事务操作,在很多场合下很是适用,譬如在注册的时候需要初始化很多张关联表的时候,问答回复的时候需要至少同时操作两张表,这些都会在某些时候只能成功更新一张表,而另外的SQL语句出现错误,正常的操作会导致初始化了一张表 ,其他的都木有能初始化,这个时候就会导致用户表里的用户信息已经执行插入,导致提示注册失败,但是用户已经注册了部分信息,这个时候需要程序员去数据库删除相应的数据是一个比较不好的事情。 因此这边考虑使用事务,事务可以...
PHP中HTML标签过滤技巧

PHP中HTML标签过滤技巧

在开发文章系统中正常需要用到HTML标签、JS脚本等其他脚本代码的过滤,稍微尝试了下,感觉简单的htmlspecialchars()函数的过滤效果始终不如strip_tags()函数的过滤效果好。 其中有人会说我就想还要显示点图片,那怎么办呢? 没关系,我们对文章内容进行二次处理,正则找出某个图片的地址,然后对整个布局动态调控下,将图片放到最后,其效果还有可能会达到微博或者是Q空间动态的那种效果,多一举两得啊!...
ini_set的用法介绍

ini_set的用法介绍

PHP ini_set用来设置php.ini的值,在函数执行的时候生效,脚本结束后,设置失效。无需打开php.ini文件,就能修改配置,对于虚拟空间来说,很方便。 函数格式:string ini_set(string $varname, string $newvalue) 不是所有的参数都可以配置,可以查看手册中的列表。 常见的设置: @ ini_set("memory_limit", "64M"); "menory_limit":设定一个脚本所能够申请到...
迅速确定php多维数组的深度的方法

迅速确定php多维数组的深度的方法

例如有一个多维数组: 复制代码 代码如下: array( array( array(1,3,4), array( array( 1,2,3 ) ) ), array( array(1,2), array(1) ) ) 这个数组的深度就是5,那么如何快速的确定一个数组深度。 (PS:T不错的PHP Q扣峮:276167802,验证:csl) 其实,只是上面的答案应该再进行排序就可以了。下面清源分享一个简单的计算深度函数: 复制代码 代码如下: <?p...
利用浏览器的Javascript控制台调试PHP程序

利用浏览器的Javascript控制台调试PHP程序

PHP是一种服务器端脚本语言,用来开发动态web应用程序。与JAVA相比,没有一个好的服务器端调试工具是其限制之一。通常我们都是在PHP代码中添加echo、var_dump等语句,将变量、数组的值显示在浏览器中来达到调试的目的。 现在,越来越多的浏览器都有了开发这工具或者Javascript控制台,通过这些工具,我们可以很方便的显示PHP代码中的变量或数组值。下面我们来做一个例子。例子中的PHP代码有四个跟踪级别:info, warn, log, erro...
<< 351 352 353 354 355 356 357 358 359 360 >>