PHP 和 Node.js 的10项对比挑战

在最近 SitePoint 的 PHP vs Node.js Smackdown 一文中,Craig Buckler 对两种语言就如何应对一系列的10个挑战进行了比较来决定哪一个总体上更佳。 网络正在处于一个日新月异的发展时代。服务器端开发人员在选择语言的时候非常困惑,有长期占主导地位的语言,例如C、Java和Perl,也有专注于web开发的语言,例如Ruby、Clojure和Go。只要你的项目运

Read More

PHP 之 FastCGI 与 mod_php 详解

网上对于FastCGI与mod_php的知识比较杂乱而不全面,故在此整理一下,以便入门学习者查阅方便。 背景 PHP最常用的方式是以模块的方式(mod_php)运行在Apache中,也是Apache运行PHP的默认方式;但在Nginx中,Nginx又使用的是PHP-FPM,但是PHP-FPM到底是个什么东东?跟php有什么关系?今天我们一起来探究一番。 PHP处理器(PHP handlers) 首

Read More

浅谈 PHP 中的多种加密技术及代码示例

同样是一道面试答错的问题,面试官问我非对称加密算法中有哪些经典的算法? 当时我愣了一下,因为我把非对称加密与单项散列加密的概念弄混淆了,所以更不用说什么非对称加密算法中有什么经典算法,结果当然也让面试官愣了一下,所以今天就花点时间说说PHP中的信息加密技术 C#编程总结(七)数据加密——附源码 信息加密技术的分类  概述 数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不

Read More

PHP 7 vs HHVM 比较

PHP 是最流行的用于 web 开发的脚本语言之一。PHP 的最新版本,PHP 7 在性能上做了很大的优化。不过,PHP 还有一个竞争对手 HHVM (HipHop Virtual Machine) — 一个运行 PHP 代码的虚拟工具。二者直接的比较正在升温,那么让我们来看一下他们直接的性能对比吧。 什么是 HHVM? 在2008年,Facebook 启动了一项工作,计划开发一个工具 将 PHP

Read More

PHP 底层的运行机制与原理解析

PHP说简单,但是要精通也不是一件简单的事。我们除了会使用之外,还得知道它底层的工作原理。 3. Sapi 如前所述,Sapi通过通过一系列的接口,使得外部应用可以和PHP交换数据并可以根据不同应用特点实现特定的处理方法,我们常见的一些sapi有: apache2handler:这是以apache作为webserver,采用mod_PHP模式运行时候的处理方式,也是现在应用最广泛的一种。 cgi:

Read More

PHP 中 9 大缓存技术总结

1、全页面静态化缓存 也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常见,比如dedecms; 一种比较常用的实现方式是用输出缓存: Ob_start() ******要运行的代码******* $content = Ob_get_contents(); ****将缓存内容写入html文件***** Ob_end_

Read More

每个程序员都应该知道的 15 个最佳 PHP 库

2. PHP CAPTCHA PHP CAPTCHA是另一个伟大的用于创建自动化音频和可视化CAPTCHA的PHP库。CAPTCHA系统是完全自动的使用图灵测试来完成区分人和机器人的挑战。 PHP库需要PHP 4以及编译的FreeType文本和GD 1或2图像生成的支持。 5. ImageWorkshop ImageWorkshop是一个伟大的开源PHP库,允许你层次化地控制操作图像。使用PHP库

Read More

如何编写一个独立的 PHP 扩展

独立的 PHP 扩展可以独立于 PHP 源码之外进行分发。要创建一个这样的扩展,需要准备好两样东西: 配置文件 (config.m4) 你的模块源码 image.png 接下来我们来描述一下如果创建这些文件并组合起来。 前面章节我会先简要说明一下安装过程, 后面章节我会记录在安装期间踩过的坑. Linux 下编译软件的步骤参见Linux 编译软件的步骤 准备好系统工具 想要扩展能够在系统上编译并成

Read More

变量在 PHP7 内部的实现_php实例_脚本之家

本文第一部分和第二均翻译自Nikita Popov(nikic,PHP 官方开发组成员,柏林科技大学的学生) 的博客。为了更符合汉语的阅读习惯,文中并不会逐字逐句的翻译。 在上篇文章给大家介绍了变量在 PHP7 内部的实现,本篇继续给大家介绍php7内部实现相关知识,感兴趣的朋友通过本篇文章一起学习吧。 要理解本文,你应该对 PHP5 中变量的实现有了一些了解,本文重点在于解释 PHP7 中 zv

Read More

15 个实用的 PHP 正则表达式

对于开发人员来说,正则表达式是一个非常有用的功能,它提供了 查找,匹配,替换 句子,单词,或者其他格式的字符串。这篇文章主要介绍了15个超实用的php正则表达式,需要的朋友可以参考下。在这篇文章里,我已经编写了15个超有用的正则表达式,WEB开发人员都应该将它收藏到自己的工具包。 验证域名检验一个字符串是否是个有效域名 $url = “http://komunitasweb.com/”; if (

Read More

PHP调试跟踪之XDebug使用总结

1. 关于代码覆盖率 衡量代码覆盖率有很多种层次,比如行覆盖率,函数/方法覆盖率,类覆盖率,分支覆盖率等等。代码覆盖率也是衡量测试质量的一个重要标准,对于黑盒测试来说,如果你不确定自己的测试用例是否真正跑过了系统里面的每一行代码,在测试的完整性上总要打些折扣。因此,业界几乎对各种编程语言都有自己的一套代码覆盖率解决方案。世界上最美的语言PHP当然也不例外。PHPUnit和Spike PHPCove

Read More

Laravel 虚拟开发环境 Homestead

本文由码农网 – 邱康原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 简介 Laravel 致力于让你在 PHP 开发过程中更加轻松愉快,这其中也包括本地开发环境的搭建。 Vagrant 提供了一种简单、优雅的方式来管理和配置虚拟机。 Laravel Homestead 是一个官方预封装的 Vagrant box,它为你提供了一个完美的开发环境,你无需在本地安装 PHP ,web

Read More

笨办法学C 练习27:创造性和防御性编程

视野狭窄 另一件可以使我们忘记好的评论实践以及标准的东西是视野狭窄。许多程序员都具有视野狭窄的毛病。你知道这种感觉 – 你解决问题,你处于最佳状态。你觉得与你的音乐(或没有)独立于自己的小世界中,并且你就在编码,突然两小时过了,你意识到你已经写了无数行没有注释的代码。我们所有人偶尔都会遇到这种事情,但重要的是在某处发现这个情况并且补上应有的注释。 八个防御性编程策略 一旦你接受了这一思

Read More

PHP项目中CodeIgniter使用的一些建议

本文由码农网 – 邱康原创,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 最好是把 system 和 application 文件夹放在 webroot 以外的地方,如果 index.php 放在 FTP 服务器的 /public_html/ 路径下,应该尝试把 System 放在根目录下 /system ,这样的话,只能通过 index.php 访问你的PHP文件。 总结 Codeig

Read More

PHP爬虫:百万级别知乎用户数据爬取与分析

使用Redis保存已经访问过的用户 抓取用户的过程中,发现有些用户是已经访问过的,而且他的关注者和关注了的用户都已经获取过了,虽然在数据库的层面做了重复数据的处理,但是程序还是会使用curl发请求,这样重复的发送请求就有很多重复的网络开销。还有一个就是待抓取的用户需要暂时保存在一个地方以便下一次执行,刚开始是放到数组里面,后来发现要在程序里添加多进程,在多进程编程里,子进程会共享程序代码、函数库,

Read More

网站地图xml地图