不灭的焱

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

作者:php-note.com  发布于:2015-04-25 12:37  分类:PHP基础 

addslashes 和 mysql_real_escape_string 都是为了使数据安全的插入到数据库中而进行的过滤,那么这两个函数到底是有什么区别呢?

作者:php-note.com  发布于:2015-04-07 11:43  分类:PHP基础 

专访阿里巴巴研究员“赵海平”:Facebook的PHP底层性能优化之路

http://www.infoq.com/cn/articles/interview-alibaba-zhaohaiping

作者:php-note.com  发布于:2015-03-21 09:56  分类:PHP基础 

刚入门的同学觉得自己能用PHP写出各种程序就很NB了,但其实作为一个专业程序员,你得有个全面点的知识结构。单元测试总得听过,文档工具总得用用,Xss总得会防。推荐大家把《PHP the right way》这篇长文仔细读读,最好每一段都弄明白了。

阅读中文版:PHP之道

作者:php-note.com  发布于:2015-03-15 20:40  分类:PHP基础 

在看别人的代码时发现经常有人不使用 ?> 结尾符。

尤其是在使用include之后,不使用的频率更高。

作者:php-note.com  发布于:2015-03-12 10:33  分类:PHP基础 
<?php
/**
 * 读写大二进制文件,不必申请很大内存
 * 只有读取到内容才创建文件
 * 保证目录可写
 *
 * @param string $srcPath 源文件路径
 * @param string $dstPath 目标文件路径
 * @return bool
 */
function fetch_big_file($srcPath, $dstPath)
{
	// ...
}
作者:php-note.com  发布于:2015-03-11 09:43  分类:PHP基础 

结论:

如果要判断文件是否存在,用函数 is_file(),

如果要判断目录是否存在,用函数 is_dir(),

好像没地方需要用file_exists了,不确定传入的参数是文件还是目录的时候用?

--> 可以预估下,当文件/文件夹不存在的概念比较大时,就用 file_exists。

作者:php-note.com  发布于:2015-03-07 22:23  分类:PHP基础 

链接就不贴了,可以在github上进行搜索。这里就不列举 symfony、laravel 这些大家都知道的项目了。只列举比较有意思的。

  • swoole, C扩展实现的PHP异步并行网络通信框架,可以重新定义PHP。过去PHP只能做Web项目,现在有了Swoole。任意服务器端程序都可以用PHP来写。
作者:php-note.com  发布于:2015-03-03 14:11  分类:PHP基础 

GUID: 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) 。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。

作者:php-note.com  发布于:2015-03-02 23:40  分类:PHP基础 

方法1:

在html表单,放置多个文件选择框, 使用数组名作为组件的名字, 如下:

<form action="upload.php" method="post" enctype="multipart/form-data"> 
	<input type="file" name="upfile[]"/> 
	<input type="file" name="upfile[]"/> 
	<input type="file" name="upfile[]"/> 
</form>
作者:php-note.com  发布于:2015-02-11 19:26  分类:PHP基础 

PHP里的__CLASS__这类东西是静态绑定的,如果不在子类里重载的话,那么继承父类方法所得到的依旧是父类的名称,而不是子类的名称,比如:

<?php
class A
{
	function __construct()
	{
		echo __CLASS__;
	}

	static function name()
	{
		echo __CLASS__;
	}
}

class B extends A
{
}

$objB = new B(); // 输出 A
B::name();       // 输出 A