做一个勇于分享的php园丁

PHP开发园地

»PHP中动态创建变量名

Posted by php园丁 @ 2012/2/22 15:53:22 阅读(8) 评论(0)

PHP中,我们可以动态地创建一个变量名。例如,你想要使用与数据库查询得到的字段名称一致的变量名。 使用PHP中“可变变量”的语法,即在一个其值为你想作为变量名称的变量前面加一个$: $animal='turtles'; $turtles=103; print$$animal; 在PHP中如果在一个变量名称前面放两个美元($)符号,PHP就会废弃右面的变量,而取其值,然后,将该值作为“真正”的变量名...

»PHP删除数组中重复的元素

Posted by php园丁 @ 2012/2/22 10:00:23 阅读(11) 评论(0)

在PHP中,有没有办法快速的删除数组中重复的元素呢?答案是可以的。 如果是创建完成的数组,使用array_unique(),该函数会返回一个只包含唯一元素的新数组: $unique=array_unique($array); 如果是在程序运行时根据结果来创建数组,那么对于创建数字数组可以使用以下技术: foreach($_REQUEST['fruits']as$fruit){ if(!in_arr...

»PHP中用sort、asort、natsort函数对数组排序

Posted by php园丁 @ 2012/2/22 9:38:10 阅读(10) 评论(0)

在PHP开发中,我们可以使用sort()、asort()、natsort()函数对数组排序。 PHP中,要按惯例对数组进行排序,使用sort(): $states=array('Delaware','Pennsylvania','NewJersey'); sort($states); 要以数字为标准排序,把SORT_NUMERIC作为第二个参数传递给sort(): $scores=array(1,...

»PHP中如何动态改变数组大小

Posted by php园丁 @ 2012/2/21 13:51:32 阅读(13) 评论(0)

PHP中我们是修改数组大小的,比如增大或减小数组的当前大小。 使用array_pad()使数组增大: //startatthree $array=array('apple','banana','coconut'); //growtofive $array=array_pad($array,5,''); 现在,count($array)的值是5,而最后两个元素,$array[3]和$array[4]...

»PHP如何利用unset()删除数组中的元素

Posted by php园丁 @ 2012/2/21 12:16:44 阅读(16) 评论(0)

在PHP中删除数组元素有以下几种方法: 要删除一个元素,用onset() unset($array[3]); unset($array['foo']); 要删除多个不连续的元素,也用unset() unset($array[3],$array[5]); unset($array['foo'],$array['bar']); 要删除多个连续的元素,用array_splice() array_spli...

»PHP中根据时区计算时间

Posted by php园丁 @ 2012/2/20 15:43:46 阅读(12) 评论(0)

你需要计算不同时区中的时间。例如,你想让用户看到他们的本地时间,而不是你服务器的时间。 对于简单的计算问题,可以直接加或减两个时区间的偏移量,如下代码: <?php //IflocaltimeisEST $time_parts=localtime(); //California(PST)isthreehoursearlier $california_time_parts=localtime(...

»PHP中checkdate日期验证方法详解

Posted by php园丁 @ 2012/2/20 14:01:27 阅读(14) 评论(0)

在PHP中如何检查一个日期是否有效呢,例如,你想要确保用户不会提交一个类似“1962年2月30日”这样的生日。 很简单,我们可以使用checkdate()函数,代码如下: $valid=checkdate($month,$day,$year); 当$month位于1-12之间,$year位于1-32767之间,$day位于1和$year及$month所代表的相应年、月份中最大的天数之间时,函数ch...

»PHP中如何找到周、月或者年中的某一天

Posted by php园丁 @ 2012/2/20 10:25:19 阅读(15) 评论(0)

在PHP中我们可以找到一年中的某一天,或者某个星期,或者一周、一个月中的某一天。例如,我们利用PHP在每个星期一或者每个月的第一天输出特别的信息。 在date()或strftime()函数中使用适当的参数即可找到周、月及年中的某一天,如下代码所示: <?php printstrftime("Todayisday%dofthemonthand%joftheyear."); print'Toda...

»PHP中计算两个日期的时间差

Posted by php园丁 @ 2012/2/20 9:42:07 阅读(34) 评论(0)

如果你想利用PHP知道两个日期间相差多长时间。例如,你想告诉用户他最后登录你的网站至今已经过了多长时间了。要实现这个功能,在PHP中可以先把两个日期转换成纪元时间戳,并计算两个时间戳的差值。如下例中将这个差值分解成了周、天、小时、分钟和秒。 <?php //7:32:56pmonMay10,1965 $epoch_1=mktime(19,32,56,5,10,1965); //4:29:11...

»PHP中查出当前的日期和时间

Posted by php园丁 @ 2012/2/19 16:40:32 阅读(19) 评论(0)

在PHP中我们可以使用strftime()或date()函数来得到一个格式化的字符串,如下面的例子就查出当前的日期和时间 <?php printstrftime('%c'); print"\n"; printdate('r'); ?> 输出结果: WedMay1018:29:592006 Wed,10May200618:29:59-0400 如果想要的是时间部件,那么使用getdate...

»PHP中使用BCMath和GMP处理极大数和极小数

Posted by php园丁 @ 2012/2/18 23:17:35 阅读(29) 评论(0)

在PHP中我们可以使用PHP内置的极大(或极小)的浮点型数。 使用BCMath或者GMP库。 使用BCMath $sum=bcadd('1234567812345678','8765432187654321'); //$sumisnowthestring'9999999999999999' print$sum; 使用GMP $sum=gmp_add('1234567812345678','8765...

»PHP生成随机数详解

Posted by php园丁 @ 2012/2/18 11:09:26 阅读(33) 评论(0)

在PHP中,我们可以利用mt_rand()函数在给定的数字范围内生成一个随机数,例如下面的例子中,就利用PHP中的mt_rand()生成了一个大于等于$lower而小于等于$upper的随机数。 $random_number=mt_rand($lower,$upper); 当你想要在网页中随机显示一幅图像时,随机地设置游戏的开始位置时,从数据库中随机地选择一条记录时,或者生成一个随机的sessio...

»PHP中编程实现可下载的CSV文件

Posted by php园丁 @ 2012/2/18 10:34:07 阅读(24) 评论(1)

在PHP开发中,我们可以通过结合使用header()函数来改变在PHP程序中以fputcsv()函数输出的数据格式的内容类型(contenttype),可以实现将CSV文件发送给浏览器的功能。浏览器接收到CSV文件后会自动调用电子表格软件(或者其他与特定的客户端系统相关联的CSV文件编辑程序)对其进行处理。下面的PHP例子代码中将SQLSELECT查询的结果格式化为CSV数据,并提供了正确的响应头...

»Linux中使用eCryptfs加密主目录

Posted by php园丁 @ 2012/2/18 0:19:07 阅读(18) 评论(0)

本文根据回忆记述在ArchLinux上为某一新用户建立使用eCryptfs加密的$HOME目录并使之在登录时自动解密挂载的过程。大量参考了Unknownandpartlyhidden的eCryptfsand$HOME一文。 依赖的软件包:ecryptfs-utils。 加密目录 #mkdir-p/home/.ecryptfs/user/private #chmod755/home/.e...

»PHP在字符串中存储二进制数据

Posted by php园丁 @ 2012/2/17 0:05:02 阅读(30) 评论(0)

在PHP中,你可以解析一个包含着二进制编码值的字符串,或者可以把值编码为字符串。例如,你想以二进制表示法保存数值,而不以是ACSII字符的序列的形式。 使用pack()把二进制数据保存到一个字符串中: <?php $packed=pack('S4',1974,106,28225,32725); ?> 使用unpack()从一个字符串中抽取二进制数据: <?php $nums=un...