《PHP编程最快明白》第八讲:php启发和小结

同时,有很多函数是可以有多种方法实现的,这需要灵活运用。只有记住了这些函数,才能开发出动态的网站;也只有多练习,整个网站开发一次,才能熟练的进行下次的开发,才发现自己的不足并改进。

很多方法都可以改进,比如这个计数器:

实例24 计数器

复制代码 代码如下:

<?php
//计数器
function countx($file="count.dat"){
if(file_exists($file)){
$fp=fopen($file,"r");
$numx=fgets($fp,10);
fclose($fp);
$numx++;
//以上四行代码可以用一条表达式代替:$numx=file_get_contents($file)+1;
}
else{
$numx=1;}
file_put_contents($file,$numx);//当文件不存在时,这函数会自动创建文件,而且会自动把参数转成字符串写入。
echo $numx;
/*整个函数体可以用两条表达式代替:file_exists($file)?file_put_contents($file,file_get_contents($file)+1):file_put_contents($file,"1");readfile($file);
*/
}
//函数调用
countx();
?>

实现方法多的是,大家多思考一下吧。

最后这个例子,是调试时用到的计算代码运行所用的时间,单位为秒以五位小数输出,相当于搜索引擎的搜索时间,常用于SQL等优化,代码如下:

实例25 计算代码运行所用时间,优化代码
复制代码 代码如下:

<?php
$ftime=microtime();
countx();//此处放要计算运行所用时间的代码,这是调用上一例的函数。
$ftime=number_format((microtime()-$ftime),5);
echo $ftime;
?>

我这本教程基本以实例为主,很少讲述,这些代码不难,函数也是精挑细选的,我的目的是能快速用起来,比如能处理中文,我如果照搬书上说的只能处理英文的函数,那有什么用呢?或者我把你用不到的函数拿出来,那也是白费时间的。

我没有讲简单的语法,不过我相信大家通过有代表性实例的练习,语法和基础都不成问题的。还有就是这本教程是我针对初、中级的人的,开发实用的网站足够了。我以后还会出高级一点的教程,比如讲sock、XML、ZIP、PDF、Mail等类库开发,以及编写自己的CMS等。我力求最快明白,不行也要更快明白吧!

再次谢谢大家,这个初中级教程就这到这里了,现在比较忙,大家也可以到我的网站www.kuphp.com逛逛,互相学习一下!

如果大家看的比较累,这里有打包的pdf与doc版 下载地址 http://www.jb51.net/books/32601.html

本页内容版权归属为原作者,如有侵犯您的权益,请通知我们删除。
在php中字符编码转换我们一般会用到iconv与mb_convert_encoding进行操作,但是mb_convert_encoding在转换性能上比iconv要差很多哦。 string iconv ( string in_charset, string out_charset, string str ) 注意:第二个参数,除了可以指定要转化到的编码以外,还可以增加两个后缀://TRANSLIT 和 //IGNORE,其中 //TRANSLIT 会自动将不能直接转化的字符变成一个或多个近似的字符,//I

ThinkPHP令牌验证实例 - 2015-05-14 20:05:13

ThinkPHP内置了表单令牌验证功能,可以有效防止表单的远程提交等安全防护。 表单令牌验证相关的配置参数有: 'TOKEN_ON'=true, // 是否开启令牌验证 'TOKEN_NAME'='__hash__', // 令牌验证的表单隐藏字段名称 'TOKEN_TYPE'='md5', //令牌哈希验证规则 默认为MD5 如果开启表单令牌验证功能,系统会自动在带有表单的模板文件里面自动生成以TOKEN_NAME为名称的隐藏域,其值则是TOKEN_TYPE方式生成的哈希字符串,用于实现表单的自动令牌验
reg.php 复制代码 代码如下: !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http://www.w3.org/1999/xhtml" head meta http-equiv="Content-Type" content="text/html; charset=utf-8" / me
strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。 语法:strstr(string,search) 参数string,必需。规定被搜索的字符串。 参数search,必需。规定所搜索的字符串。如果该参数是数字,则搜索匹配数字 ASCII 值的字符。 该函数对大小写敏感。如需进行大小写不敏感的搜索,请使用 stristr()。 strstr()函数简单演示 复制代码 代码如下: ?php echo strs
?php// 使用Memache 作为进程锁 class lock_processlock{// key 的前缀protected $sLockKeyPre;// 重试间隔 protected $iLockRetryInterval;//重试次数 protected $iLockRetryCount;//锁的过期时间 protected $iLockCacheTimeout; // 锁过期后的回调函数 protected $onLockTimeoutFunc;// memache 的实例 protecte
php 修改 增加xml结点属性的代码,供大家学习参考。 php修改xml结点属性,增加xml结点属性的代码,有需要的朋友,参考下。 1、xml文件 复制代码 代码如下: ?xml version="1.0" encoding="UTF-8" ? clientSet server url="192.168.0.180" port="1935" / rootPath value="" / homePath value="http://www.aaa.com" / helpPath value="help.h
双链表是一种重要的线性存储结构,对于双链表中的每个节点,不仅仅存储自己的信息,还要保存前驱和后继节点的地址。 PHP SPL中的SplDoublyLinkedList类提供了对双链表的操作。 SplDoublyLinkedList类摘要如下: SplDoublyLinkedList implements Iterator , ArrayAccess , Countable { public __construct ( void ) public void add ( mixed $index , mixe
近日,需要满足测试需求,进行大数据并发测试时,报出【 HTTP 错误 500.0 - Internal Server Error E:\PHP\php-cgi.exe - FastCGI 进程超过了配置的活动超时时限 】 解决办法: IIS7-FastCGI设置-双击"php-cgi.exe"-"活动超时" 项默认是设置为70(秒),改为600(10分钟,此处根据需求设置可以略高~)
使用PHP不仅可以让用户通过浏览器访问服务器端的文件,还可以通过HTTP或FTP等协议访问其他服务器中的文件,可以在大多数需要用文件名作为参数的函数中使用HTTP和FTP URL来代替文件名。使用fopen()函数将指定的文件名与资源绑定到一个流上,如果文件名是“scheme://…”的格式,则被当成一个URL,PHP将搜索协议处理器(也被成为封装协议)来处理此模式。 如果需要远程访问文件,必须在PHP的配置文件中激活“allow_url_fopen”选项,才能使用fopen()函数打开远程文件。而且还要
复制代码 代码如下: function resizeimage($srcfile,$mySize){ $size=getimagesize($srcfile); switch($size[2]){ case 1: $img=imagecreatefromgif($srcfile); break; case 2: $img=imagecreatefromjpeg($srcfile); break; case 3: $img=imagecreatefrompng($srcfile); break; } //源