随笔分类 - PHP
自己学习PHP 表达式入门
摘要://核查ULR是否有效function checklongurl($src){ $matches = array(); preg_match('@^(?:http://)?([^/]+)@i', $src, $matches); $host = $matches[1]; // get last two segments of host name preg_match('/[^.]+\.[^.]+$/', $host, $matches); $ischeck = isValid($matches[0]);}首先我们分解'@^(?:http://)?([^/
阅读全文
独一无二的对象 单例模式
摘要:单例模式可能是所有设计模式中最简单,但却是非常重要的一种设计模式。 很多情况下都需要类只有一个实例,比如说数据库的实例对象(可以看深空的那个数据库类。就是采用了单例模式)。因为他只有一个类图。所以说他简单。 通过几个提问,可能你能更容易的理解单例模式! 你如何创建类的实例? 使用new关键字 那如何避免一个类的实例创建? 可以这样操作么? class MyObject{private function __construct() {}} 那这样将如何获取这个类的实例? 因为构造函数已经被私有化。只有类的内部才能调用这个类的实例。外部想调用是没办法的。 那如果这样操作是不是就解决了? clas.
阅读全文
加工你的OO精华 工厂模式
摘要:上几章都大致了解了在OOP设计中,应该针对抽象编程而不是具体实现编程。 但是上面几章的代码中或多或少都又"new"来创建对象的实例。那么在这些地方,就不是针对抽象编程,而成了具体实现的编程。 但使用"new" 有错吗?从本质上讲是没错的,因为这是OOP的基础。但是,从另一个角度去说,他是错误的。但错不在他。而在程序上面。 简单的说,就是我们使用了new关键词将代码的执行硬编码进了程序之中。他不能在程序运行时来决定运行哪一个。也就是说,当我们希望一个项目需要改变的时候,需要添加新的对象的时候,需要打开文件进去修改 第三节的装饰模式重点讲过一个原则:对修改关
阅读全文
基于PHP的cURL快速入门
摘要:cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。最爽的是,PHP也支持 cURL 库。本文将介绍 cURL 的一些高级特性,以及在PHP中如何运用它。为什么要用 cURL?是的,我们可以通过其他办法获取网页内容。大多数时候,我因为想偷懒,都直接用简单的PHP函数:$content = file_get_contents("http://www.nettuts.com");// or$lines = file("http://www.nettuts.com");// orreadfile(http
阅读全文
PHP extract() 函数
摘要:定义和用法PHP extract() 函数从数组中把变量导入到当前的符号表中。对于数组中的每个元素,键名用于变量名,键值用于变量值。第二个参数 type 用于指定当某个变量已经存在,而数组中又有同名元素时,extract() 函数如何对待这样的冲突。本函数返回成功设置的变量数目。语法extract(array,extract_rules,prefix)参数描述array必需。规定要使用的输入。extract_rules可选。extract() 函数将检查每个键名是否为合法的变量名,同时也检查和符号表中的变量名是否冲突。对非法、数字和冲突的键名的处理将根据此参数决定。可以是以下值之一:可能的值:
阅读全文
php 随机数
摘要:phpmt_srand播下一个更好的随机数发生器种子mt_srand(PHP 3 >= 3.0.6, PHP 4, PHP 5)mt_srand -- 播下一个更好的随机数发生器种子说明voidmt_srand(intseed)用 seed 来给随机数发生器播种。从 PHP 4.2.0 版开始,seed 参数变为可选项,当该项为空时,会被设为随时数。例子 1. mt_srand() 范例代码<?php//seedwithmicrosecondsfunctionmake_seed(){list($usec,$sec)=explode('',microtime());r
阅读全文
浙公网安备 33010602011771号