• 再谈PHP、Python与Ruby

    Posted by : lon.y@qq.com on 2017年7月4日

    本文整理自知乎。 一句话总结 简单地总结: 假如你想帮他尽快找个活儿,赚到钱,推荐PHP。 假如你想让他成为一个高效工程师,推荐 Python。 假如你想让他爱上他的工作,推荐 Ruby。   语言的选择 编程语言非常重要,不要认为他们都图灵等价,用起来都一样。实际上,好的语言,带给你的东西是超乎想像的。 下面是一些看法: 程序员的时间远比机器的时间宝贵:选择开发效率最高的语言吧,不要过于在乎运行性能,如果你开发不出东西,那么跑得多快也没用。 优雅的抽象胜

    阅读全文...

  • 日请求亿级的 QQ 会员 AMS 平台 PHP7 升级实践

    Posted by : lon.y@qq.com on 2017年7月4日

    QQ会员活动运营平台(AMS),是QQ会员增值运营业务的重要载体之一,承担海量活动运营的Web系统。AMS是一个主要采用PHP语言实现的活动运营平台, CGI日请求3亿左右,高峰期达到8亿。然而,在之前比较长的一段时间里,我们都采用了比较老旧的基础软件版本,就是PHP5.2+Apache2.0(2008年的技术)。尤其从去年开始,随着AMS业务随着QQ会员增值业务的快速增长,性能压力日益变大。 于是,自2015年5月,我们就开始规划PHP底层升级,最终的目

    阅读全文...

  • 2017 年 PHP 程序员未来路在何方?

    Posted by : lon.y@qq.com on 2017年7月4日

    PHP 从诞生到现在已经有20多年历史,从Web时代兴起到移动互联网退潮,互联网领域各种编程语言和技术层出不穷, Node.js 、 GO 、 Python 不断地在挑战 PHP 的地位。这些技术的推动者非常热衷于唱衰 PHP , PHP 语言的未来在哪里?PHP 程序员当如何应对未来的变革? 作为老牌的Web后端编程语言,PHP 在全球市场占有率非常高,仅次于 Java ,从各个招聘网站的数据上来看PHP 开发的职位非常多,薪资水平也非常不错。实际在中小

    阅读全文...

  • PHP命令行下的世界

    Posted by : lon.y@qq.com on 2017年7月4日

     php命令行(CLI)参数详解 以交互式shell模式运行php 运行内建的Web服务器 查找PHP的配置文件 查看类/函数/扩展信息 语法检查 命令行脚本开发 PHP作为一门web开发语言,通常情况下我们都是在Web Server中运行PHP,使用浏览器访问,因此很少关注其命令行操作以及相关参数的使用,但是,特别是在类Unix操作系统上,PHP可以作为一门脚本语言执行与shell类似的处理任务。 php命令行(CLI)参数详解 查看PHP的所有命令行

    阅读全文...

  • PHP 内核分析(2):ZTS和zend_try

    Posted by : lon.y@qq.com on 2017年7月4日

    这里阅读的php版本为PHP-7.1.0 RC3,阅读代码的平台为linux ZTS 我们会看到文章中有很多地方是: #ifdef ZTS # define CG(v) ZEND_TSRMG(compiler_globals_id, zend_compiler_globals *, v) #else # define CG(v) (compiler_globals.v) extern ZEND_API struct _zend_compiler_globa

    阅读全文...

  • 这些最热门的 PHP 框架,哪一款是你的菜?

    Posted by : lon.y@qq.com on 2017年7月4日

    PHP 是世界上最流行的编程语言之一,广泛用于主要的项目中。例如,Facebook 就是利用 PHP 来创建和维护他们的内部系统;WordPress 内部基于 PHP, 作为报答它为超过26%的网站提供了技术支持。而现在PHP已经为超过82%的网站提供了支持(Web Technology Surveys 站点能够跟踪的服务器端编程语言)。 本文将通过 3 款最流行的 PHP 框架:Symfony, Laravel, 和 Yii 的比较,来帮助你找到最适合的

    阅读全文...

  • PHP 原生 DOM 对象操作 XML

    Posted by : lon.y@qq.com on 2017年7月4日

    对于操作XML类型文件,PHP内置有一套DOM对象可以进行处理。对XML的操作,从创建、添加到修改、删除都可以使用DOM对象中的函数来进行。 创建 创建一个新的XML文件,并且写入一些数据到这个XML文件中。 /* * 创建xml文件 */ $info = array( array('obj' => 'power','info' => 'power is shutdown'), array('obj' => 'memcache','info' => 'me

    阅读全文...

  • PHP7 中我们应该学习会用的新特性

    Posted by : lon.y@qq.com on 2017年7月4日

    PHP7 带来显著的性能改进和新特性,并对之前版本的一些特性进行改进。本文将和大家一起来了解探讨 PHP7 中的新特性。 1.标量类型声明 我们知道PHP是一种弱类型的编程语言,因此没有提供任何方法来指定输入参数和返回值的类型,PHP7突破了这种现状,增加了对标量类型(int,float,string,bool)的声明支持,增加declare(strict_types=1)指令声明是否严格类型校验,我们来看一段代码: declare(strict_type

    阅读全文...

  • 用 PHP 爬虫做旅游数据分析

    Posted by : lon.y@qq.com on 2017年7月4日

    声明: 采集程序只做技术研究使用,切不可做出格的事以免惹来麻烦 首先感谢广大网友的支持,现将源代码公开,地址如下: https://github.com/owner888/phpspider github地址的demo目录下的 mafengwo.php 和 mafengwo.sql 本程序所采集的数据都是马蜂窝上面公开的数据,并未触及隐私内容,也不公开数据库,广大网友无需担心。 你们有什么想要的功能可以在下面留言给我,我会收集一下给大家做出来。也可以加入Q

    阅读全文...

  • 作为PHP开发者请务必了解Composer

    Posted by : lon.y@qq.com on 2017年7月4日

    Composer是一个非常流行的PHP包依赖管理工具,已经取代PEAR包管理器,对于PHP开发者来说掌握Composer是必须的. 对于使用者来说Composer非常的简单,通过简单的一条命令将需要的代码包下载到vendor目录下,然后开发者就可以引入包并使用了. 其中的关键在于你项目定义的composer.json,可以定义项目需要依赖的包(可能有多个),而依赖的包可能又依赖其他的包(这就是组件的好处),这些都不用你烦心,Composer会自动下载你需要

    阅读全文...