PHP笔记网

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2014-06-26 17:37:00  修改时间:2024-10-30 13:34:51  分类:11.PHP基础  编辑

实际应用中的一点区别与总结:

array_walk() 主要用于对某个数组的迭代,相当于 foreach

array_map() 主要是根据某个/某几个数组产生一个新的数组,常应用于递归效果!

作者:Albert.Wen  添加时间:2014-06-26 13:33:00  修改时间:2024-11-17 03:53:15  分类:11.PHP基础  编辑

定义和用法

array_map() 函数返回用户自定义函数作用后的数组。回调函数接受的参数数目应该和传递给 array_map() 函数的数组数目一致。

语法

array_map(function,array1,array2,array3...)

 

作者:Albert.Wen  添加时间:2014-06-26 12:14:40  修改时间:2024-10-30 13:49:29  分类:11.PHP基础  编辑

定义和用法

array_walk() 函数对数组中的每个元素应用回调函数。如果成功则返回 TRUE,否则返回 FALSE。

典型情况下 function 接受两个参数。array 参数的值作为第一个,键名作为第二个。如果提供了可选参数 userdata ,将被作为第三个参数传递给回调函数。

如果 function 函数需要的参数比给出的多,则每次 array_walk() 调用 function 时都会产生一个 E_WARNING 级的错误。这些警告可以通过在 array_walk() 调用前加上 PHP 的错误操作符 @ 来抑制,或者用 error_reporting()。

 

语法

array_walk(array,function,userdata...)

作者:Albert.Wen  添加时间:2014-06-21 22:28:00  修改时间:2024-10-30 13:35:01  分类:11.PHP基础  编辑

最近需要开发一个头像上传的功能,找了很多都需要授权的,后来找到了美图秀秀,功能非常好用。

<?php
/**
 * Note:for octet-stream upload
 * 这个是流式上传PHP文件
 * Please be amended accordingly based on the actual situation
 */
$post_input = 'php://input';
$save_path = dirname(__FILE__);
$postdata = file_get_contents($post_input);

if (isset($postdata) && strlen($postdata) > 0)
{
	$filename = $save_path . '/' . uniqid() . '.jpg';
	$handle = fopen($filename, 'w+');
	fwrite($handle, $postdata);
	fclose($handle);
	if (is_file($filename))
	{
		echo 'Image data save successed,file:' . $filename;
		exit ();
	}
	else
	{
		die ('Image upload error!');
	}
}
else
{
	die ('Image data not detected!');
}
作者:Albert.Wen  添加时间:2014-06-21 16:09:00  修改时间:2024-10-30 13:36:09  分类:11.PHP基础  编辑

在Form元素的语法中,EncType表明提交数据的格式 

用 Enctype 属性指定将数据回发到服务器时浏览器使用的编码类型。 

下边是说明: 

application/x-www-form-urlencoded: 窗体数据被编码为名称/值对。这是标准的编码格式。 

multipart/form-data: 窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。 

text/plain: 窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符。

 

作者:Albert.Wen  添加时间:2014-06-21 01:29:00  修改时间:2024-11-14 21:11:34  分类:11.PHP基础  编辑

最近用到ext与PHP交互,ext把json数据post给PHP,但在PHP里面$_POST获取不到,$_REQUEST也获取不到,但是通过firedebug看到的请求信息确实是把JSON数据post给了PHP,这什么情况...突然想到了以前接触过flash将图片二进制流传给php,灵机一动用$GLOBALS['HTTP_RAW_POST_DATA']获取到了。

作者:Albert.Wen  添加时间:2014-05-20 22:47:00  修改时间:2024-11-04 21:06:12  分类:11.PHP基础  编辑

PHP的垃圾回收机制

PHP5.3之前使用的垃圾回收机制是单纯的“引用计数”,也就是每个内存对象都分配一个计数器,当内存对象被变量引用时,计数器+1;当变量引用撤掉后,计数器-1;当计数器=0时,表明内存对象没有被使用,该内存对象则进行销毁,垃圾回收完成。

“引用计数”存在问题,就是当两个或多个对象互相引用形成环状后,内存对象的计数器则不会消减为0;这时候,这一组内存对象已经没用了,但是不能回收,从而导致内存泄露。

PHP5.3开始,使用了新的垃圾回收机制,在引用计数基础上,实现了一种复杂的算法,来检测内存对象中引用环的存在,以避免内存泄露。

作者:Albert.Wen  添加时间:2012-05-13 12:11:54  修改时间:2024-11-14 16:49:25  分类:11.PHP基础  编辑

注释标记

@access

  • 使用范围:class,function,var,define,module
  • 该标记用于指明关键字的存取权限:private、public或proteced

@author

  • 指明作者

@copyright

  • 使用范围:class,function,var,define,module,use
  • 指明版权信息
作者:Albert.Wen  添加时间:2012-05-30 01:05:40  修改时间:2024-10-31 17:49:54  分类:11.PHP基础  编辑

9. 单词边界

元字符<<\b>>也是一种对位置进行匹配的“锚”。这种匹配是0长度匹配。

有4种位置被认为是“单词边界”:

1) 在字符串的第一个字符前的位置(如果字符串的第一个字符是一个“单词字符”)

2) 在字符串的最后一个字符后的位置(如果字符串的最后一个字符是一个“单词字符”)

3) 在一个“单词字符”和“非单词字符”之间,其中“非单词字符”紧跟在“单词字符”之后

4) 在一个“非单词字符”和“单词字符”之间,其中“单词字符”紧跟在“非单词字符”后面

作者:Albert.Wen  添加时间:2012-05-12 00:54:41  修改时间:2024-10-30 13:36:20  分类:11.PHP基础  编辑

用filesize() 函数可以返回文件的大小,可是返回值是以B(字节)为单位的,看起来不方便。怎么让它根据文件的大小自动以KB、MB、GB为单位显示呢,用下面这个函数就可以实现了。