Welcome 微信登录

首页 / 网页编程 / PHP

PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据

PHP 杂谈《重构-改善既有代码的设计》之三 重新组织数据

思维导图 介绍 承接上文的PHP 杂谈《重构-改善既有代码的设计》之 重新组织你的函数继续重构方面的内容。这章主要针对数据的重构。1、争论的声音——直接访问Field还是通过函数(Accessor)访问Field2.修改Array为Object:当你看到一个Array很像一个数据结构,你可以使用Replace Array with Object,把Array变成一个对象。——数据结构更清晰。专业术语accessor:访问者,存储器——在本文翻译为“函数”d...
PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式

PHP 杂谈《重构-改善既有代码的设计》之四 简化条件表达式

思维导图 点击下图,查看大图。 介绍条件逻辑有可能十分复杂,因此本章提供一些重构的手法,专门用来简化它们。全文简述(你可直接跳过下面的内容) 核心重构:Decompose Conditional——分离”转辙逻辑“(switching logic)和”操作细节“(details)分离。 多处测试有相同结果:Consolidate Conditional Expresssion 条件代码中去掉重复成分:Consolidate Duplicate 标识...
PHP得到某段时间区间的时间戳 php定时任务

PHP得到某段时间区间的时间戳 php定时任务

这两天要实现这样功能: 当达到某一条件时,让服务器发短信给用户,数量为多条。 基本思路:linux 定时扫描,若有满足条件的用户,则发送短信。 但为了防止打扰到用户,要求只能在白天8:00-20:00发送短信,怎么样获得到每天的这段时间区间? 请看 复制代码 代码如下: $y=date("Y",time()); $m=date("m",time()); $d=date("d",time()); $start_time = mktime(9, 0, 0, $...
php和mysql中uft-8中文编码乱码的几种解决办法

php和mysql中uft-8中文编码乱码的几种解决办法

PHP页面转UTF-8编码问题 1.在代码开始出加入一行: 复制代码 代码如下: header("Content-Type: text/html;charset=utf-8"); 2.PHP文件编码问题 点击编辑器的菜单:“文件”->“另存为”,可以看到当前文件的编码,确保文件编码为:UTF-8, 如果是ANSI,需要将编码改成:UTF-8。 3.PHP文件头BOM问题: PHP文件一定不可以有BOM标签 否则,会出现session不能使用的情况,...
PHPMYADMIN导入数据最大为2M的解决方法

PHPMYADMIN导入数据最大为2M的解决方法

PHPMYADMIN是经常使用的一个MySql管理工具,备份和还原是PHPMYADMIN的重要功能,在还原数据库的时候经常遇到这样的一个情况:PHPMYADMIN还原数据库的时候上传的最大限制:2,048 KB,数据库稍微大一些就无法处理,要么使用其他的备份还原工具如帝国备份王,要么就分卷导出,那么有没有办法还使用PHPMYADMIN来处理呢?肯定可以的,根据下面的步骤来吧。 以WINDOWS2003系统为例,共分为三部分:IIS部分、PHP部分和PHPM...
php中邮箱地址正则表达式实现与详解

php中邮箱地址正则表达式实现与详解

首先附上代码 复制代码 代码如下: ^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$ 在这段正则表达式中,“+”表示前面的字符串连续出现一个或多个;“^”表示下一个字符串必须出现在开头,“$”表示前一个字符串必须出现在结尾; “.”也就是“.”,这里“”是转义符;“{2,3}”表示前面的字符串可以连续出现2-3次。“()”表示包含的内容必须同时出现在目标对象中。“[_.0-9a-z-]”表示包含在“_”、“....
介绍一些PHP判断变量的函数

介绍一些PHP判断变量的函数

虽然这一特点使用PHP编程非常容易,但它也存在一个重要的缺陷:当你需要测试一个变量的类型时,处理类型比较松散的语言就让人有些迷惑。幸运地是,PHP的开发者注意到这一情况,因此在其中包含了一个函数工具包,特别用它来测试变量并查明它们属于哪个特定的字符类别——也就是说,它们是否包含字符串、整数、对象或布尔值。 下面列出了这一类别中较为有用的函数,并提供说明与应用实例。 empty($var) 这个函数用来检查变量是否为空(没有值或零值)。用此函数来检查用户输入...
<< 251 252 253 254 255 256 257 258 259 260 >>