随笔分类 - PHP
网站语言
摘要:PHPmailer无法发送邮件,提示错误Error: Could not connect to SMTP host博客之前有两篇文章,《PHPMailer::不能连接SMTP服务器》《PHPMailer不能连接SMTP服务器的两种常见原因》一为转载,一为笔记,结果误人子弟了,不是每个人能解决问题。有朋友来信求助,我也着急。虽然后来解决了,但我还是不得要领,静下心来又看了看PHPMailer不能连接SMTP服务器,究竟为什么?先用代码检测一下:<?functionGet_host($host){//解析域名$Get_host=gethostbyname($host);echo"尝
阅读全文
摘要:function myErrorHandler($errno, $errstr, $errfile, $errline){ if(!(error_reporting() &$errno)){return;} switch ($errno){ case E_USER_ERROR: echo "<b>My ERROR</b> [$errno] $errstr<br/>"; echo "错误行:$errline 在文件:$errfile之中<br/>"; echo " PHP版本: "
阅读全文
摘要:boolassert(mixed$assertion[,string$description] ) —检查一个断言是否为FALSE 1 assert_options(ASSERT_ACTIVE, true);//允许使用assert()函数 2 assert_options(ASSERT_WARNING, false);//在assert失败时不输出警告信息 3 assert_options(ASSERT_BAIL, true);//assert失败后终止代码执行 4 assert_options(ASSERT_CALLBACK, 'getMsg');//assert失败后终止
阅读全文
摘要:预定义常量:DIRECTORY_SEPARATOR(string) :目录分隔符PATH_SEPARATOR(string) :路径分隔符boolchdir(string$directory)—改变目录echo getcwd() . "\n";chdir('public_html');echo getcwd() . "\n";boolchroot(string$directory)—改变根目录,仅在系统支持且运行于 CLI,CGI 或嵌入 SAPI 版本时才行。dir::dir(string$directory)—directory 类,
阅读全文
摘要:function mySetCookie($data, $name){ if(empty($data) || empty($name))return; $args = func_get_args(); $time = empty($args[2])? time() + 3600 : time() + $args[2]; $path = empty($args[3])? '' : $args[3]; $domain = empty($args[4])? '' : $args[4]; $secure = empty($args[5])? '' : $
阅读全文
摘要:boolclass_alias(string$original,string$alias[,bool$autoload=TRUE] ) —为一个类创建别名boolclass_exists(string$class_name[,bool$autoload] )—检查类是否已定义stringget_called_class(void) —获取静态方法调用的类名class foo { static public function test(){ var_dump(get_called_class()); }}class bar extends foo {}foo::test...
阅读全文
摘要:网址:http://www.helloweba.com/view-blog-189.html很多项目中需要用到即时上传功能,比如,选择本地图片后,立即上传并显示图像。本文结合实例讲解如何使用jQuery和PHP实现Ajax即时上传文件的功能,用户只需选择本地图片确定后即实现上传,并显示上传进度条,上传完成后,显示图片信息。 HTML本示例基于jQuery以及相当出色的jquery.form插件,所以,先要载入jquery库和form插件。<scripttype="text/javascript"src="jquery.min.js"><
阅读全文
摘要:问题:2个函数都是针对字符串转义使其适合做文件名。该用哪个?哪个更标准?结论:rawurlencode遵守是94年国际标准备忘录RFC 1738,urlencode实现的是传统做法,和上者的主要区别是对空格的转义是'+'而不是'%20'javascript的encodeURL也是94年标准,而javascript的escape是另一种用"%xxx"标记unicode编码的方法。推荐在PHP中使用用rawurlencode。弃用urlencode样例source:超级无敌的人sadha sajdh数据样本sdls fhejrthcxzb.fil
阅读全文
摘要:<?phpclassImageextendsController{functionImage(){parent::Controller();$this->load->library('image_lib');}//缩略图functionindex(){echo'*调整图像大小<br>*创建缩略图<br>*图像裁剪<br>*图像旋转<br>*添加图像水印<br>';}//缩略图functionresize(){/*注意当$config['create_thumb']等于F
阅读全文
摘要:PHP SESSION原理我们知道,session是在服务器端保持用户会话数据的一种方法,对应的cookie是 在客户端保持用户数据。HTTP协议是一种无状态协议,服务器响应完之后就失去了与浏览器的联系,最早,Netscape将cookie引入浏览器,使得 数据可以客户端跨页面交换,那么服务器是如何记住众多用户的会话数据呢?首先要将客户端和服务器端建立一一联系,每个客户 端都得有一个唯一标识,这样服务器才能识别出来。建议唯一标识的方法有两种:cookie或者通过GET方式指定。默认配置的PHP使用session的 时会建立一个名叫”PHPSESSID”的cookie(可以通过php.ini修改
阅读全文
摘要:正则表达式(Regular Expression,缩写为regexp,regex或regxp),又称正规表达式、正规表示式或常规表达式或正规化表示法或正规表示法,是指一个用 来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本 内容。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的在正则表达式引擎。正则表达式这个概念最初是由 Unix中的工具软件(例如sed和grep)普及开的。(摘自维基百科)PHP同时使用两套正则表达式规则,一套是由电气和电子工程师协会(I
阅读全文
摘要:[PHP] ; PHP还是一个不断发展的工具,其功能还在不断地删减 ; 而php.ini的设置更改可以反映出相当的变化, ; 在使用新的PHP版本前,研究一下php.ini会有好处的 ;;;;;;;;;;;;;;;;;;; ; 关于这个文件 ; ;;;;;;;;;;;;;;;;;;; ; 这个文件控制了PHP许多方面的观点。为了让PHP读取这个文件,它必须被命名为 ; 'php.ini'。PHP 将在这些地方依次查找该文件:当前工作目录;环境变量PHPRC ; 指明的路径;编译时指定的路径。 ; 在windows下,编译时的路径是Windows安装目录。 ; 在命令行模式下,p
阅读全文
摘要:__construct() 构造函数__destruct() 析构函数__call() 调用不存在的方法时调用__callStatic() 静态函数里面调用不存在的方法时调用__get() 对未定义的变量赋值时调用__set() 读未定义的变量时调用__isset() 对未定义的变量执行isset()时调用__unset() 对未定义的变量执行unset()时调用__toString() 允许以调用字符串的方法调用对象__invoke() 允许以调用函数的方法调用对象__set_state() 执行var_export返回的内容__clone() 对象完全复制使用情况:如果对象A中保存着对象B
阅读全文
摘要:Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术。但是现在的一些论坛程 序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。如下:<?php $name = '浅水游';print <<<EOT<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312&qu
阅读全文
摘要:PHP的header函数 可以很少代码就能实现HTML代码中META 标签这里只说用 header函数来做页面的跳转1. HTML代码中页面的跳转的代码HTML meta refresh 刷新与跳转(重定向)页面refresh 属性值 -- 刷新与跳转(重定向)页面 * refresh用于刷新与跳转(重定向)页面 * refresh出现在http-equiv属性中,使用content属性表示刷新或跳转的开始时间与跳转的网址 * 引用网址:http://www.dreamdu.com/xhtml/refresh/meta refresh示例5秒之后刷新本页面:<meta htt...
阅读全文
摘要:include()The include() 语句包括并运行指定文件。以下文档也适用于require()。这两种结构除了在如何处理失败之外完全一样。include() 产生一个警告而require() 则导致一个致命错误。换句话说,如果你想在遇到丢失文件时停止处理页面就用require()。include() 就不是这样,脚本会继续运行。同时也要确认设置了合适的include_path。当一个文件被包括时,其中所包含的代码继承了include 所在行的变量范围。从该处开始,调用文件在该行处可用的任何变量在被调用的文件中也都可用。例子12-3. 基本的 include() 例子vars.php&
阅读全文
摘要:在使用 php 编写页面程序时,我经常使用变量处理函数判断 php 页面尾部参数的某个变量值是否为空,开始的时候我习惯了使用 empty() 函数,却发现了一些问题,因此改用 isset() 函数,问题不再。顾名思义,empty() 判断一个变量是否为“空”,isset() 判断一个变量是否已经设置。正是这种所谓的“顾名思义”,令我开始时走了些弯路:当一个变量值等于0时,empty()也会成立(True),因而会发生 一些意外。原来,empty() 和 isset() 虽然都是变量处理函数,它们都用来判断变量是否已经配置,它们却是有一定的区别:empty还会检测变量是否为空、为零。当一个变量值
阅读全文
摘要:$_SERVER['PHP_SELF'] #当前正在执行脚本的文件名,与 document root相关。$_SERVER['argv'] #传递给该脚本的参数。$_SERVER['argc'] #包含传递给程序的命令行参数的个数(如果运行在命令行模式)。$_SERVER['GATEWAY_INTERFACE'] #服务器使用的 CGI 规范的版本。例如,“CGI/1.1”。$_SERVER['SERVER_NAME'] #当前运行脚本所在服务器主机的名称。$_SERVER['SERVER_SOFTWARE
阅读全文
摘要:用PHP写一个验证码类,并进行封装。 类名:validationcode.class.php 代码如下: <?php class ValidationCode { private $width; private $height; private $codeNum; private $image; //图像资源 private $disturbColorNum; private $checkCode; function __construct($width=80, $height=20, $codeNum=4){ $this->width=$width; $this->hei.
阅读全文
摘要:所需环境:php 5.3.3apache 2.2.7mysql 5.5.8解压Memcached_1.2.5文档,cmd下执行memcached.exe -d -install将php5.3_vc6_memcachedll文档解压,将php_memcache.dll文件复制到php安装目录的ext文件目录中。然后在php.ini 当中填上这句话:extension="php_memcache.dll"在phpinfo()下查看,是否引用了memcache扩展。测试代码:<?php//连接$mem=newMemcache;$mem->connect("1
阅读全文