第515页

  • PHP中的流

    PHP中的流

    PHP回顾系列目录 PHP基础 web请求 cookie web响应 session 数据库操作 加解密 Composer 创建自己的Composer包 发送邮件 IO 上篇 “PHP回顾之IO” 提到读取文件、网络通信等操作,本质上是与 “流(stream)” 打交道。流机制是许多编程语言的重要机制,程序通过流可自由操作文件、内存、网络等设备的数据。 本文先简要跟踪PHP底层流的原理,再回到用户态中流的使用。 底层流 我们知道PHP中的fopen函...

    期权知识 2020-08-20 608 0
  • PhpStorm不能更改PHP语法版本

    PhpStorm不能更改PHP语法版本

    打开许久没用的PHPStorm,提示PHP文件里的“Group Use”语法在PHP7中才可用。尝试进设置里更改PHP语法版本,发现熟悉的下拉框不可选。虽然不影响使用,但作为强迫症患者,项目中的一条条红线不解决掉是不能安心写代码的。 软件启动时提示有更新,寻思是不是升级一下就好了?从官网下载升级包安装,打开项目问题依旧。 升级不能解决问题,看来另有原因。上Google查找答案,发现JetBrains的官方论坛有人给出了原因:composer.json中设置了PHP的版本。 原因已经找到,解决办法主要有以下几...

    期权知识 2020-08-20 572 0
  • Windows编译PHP7.2拓展

    Windows编译PHP7.2拓展

    准备工作 https://github.com/Microsoft/php-sdk-binary-tools下载PHP-SDK(在右边的“clone or download”点击,选择下方的“download zip”); https://windows.php.net/downloads/releases/下载PHP7.2的源码,此时最新版本是7.2.8,选择“php-7.2.8-src.zip”下载; https://visualstudio.microsoft.com/zh-hans/do...

    期权知识 2020-08-20 644 0
  • 解决Windows上编译PHP7.1拓展的错误

    解决Windows上编译PHP7.1拓展的错误

    接上篇Windows编译PHP7.2拓展,以为编译PHP7.1的拓展应该水到渠成,马到成功。哪知道编译PHP7.1拓展出现了新问题,折腾更超7.2。 第一个问题是VC15(visual studio 2017)不能编译PHP7.1的拓展,所以需要安装VC14(visual studio 2015)或其编译工具。从巨硬官网下载2015要登录,还要订阅“Visual Studio Dev Essentials”计划。看着安装程序显示需要占用9个G的硬盘空间,50G的C盘同样感到菊紧。 安装好VC14,开始按照流程...

    期权知识 2020-08-20 578 0
  • Nginx的upstream_response_time

    Nginx的upstream_response_time

    前几日为了查看FPM的性能,在Nginx的配置里增加FPM响应时间的header: http { ... server { ... location ~ \.php$ { ... add_header X-Upstream-Time $upstream_response_time; } } } 今天闲来查看网页的响应头,发现值与预期的不一致: 要说153毫秒我是相信的,那么数值的单位是纳秒。但这不符合常理:1. 印象中upstream_res...

    期权知识 2020-08-20 542 0
  • Windows上的Redis

    Windows上的Redis

    Redis是一个高性能的内存型NoSQL数据库,是服务端开发中常用的软件。Redis官方支持*nix、BSD等系统,没有提供对Windows平台的支持。Windows平台上的Redis由微软开发,但微软目前暂停了对其的支持和维护。微软Redis的Github仓库是 MicrosoftArchive/redis,最后发布的版本是两年前的3.2.100。 在网络上搜索“redis windows”,不管新旧博文还是教程,都指向了3.2.100。软件老旧没问题,好用就行。但实践证明在大数据量下(超过几千个key),W...

    期权知识 2020-08-20 582 0
  • PHP协程

    PHP协程

    PHP回顾系列目录 PHP基础 web请求 cookie web响应 session 数据库操作 加解密 Composer 创建自己的Composer包 发送邮件 IO 流 Socket编程 多进程编程 执行流程及相关概念 PHP自5.5起引入了生成器(Generator),基于其可实现协程编程。本文先回顾生成器,然后过渡到协程编程。 yield与生成器 生成器 生成器是一种数据类型,实现了iterator接口。不能通过new得到生...

    期权知识 2020-08-20 757 0
  • PHP反射

    PHP反射

    PHP回顾系列目录 PHP基础 web请求 cookie web响应 session 数据库操作 加解密 Composer 创建自己的Composer包 发送邮件 IO 流 Socket编程 多进程编程 执行流程及相关概念 协程 反射是编程语言的高级特性,能在运行时让代码有感知代码的能力。PHP自5起支持反射机制,其是各种OOP框架底层实现的重要支撑。 反射 从一个简单的例子理解反射:人有五官四肢,但鲜有人清楚人体内部的经脉走向、骨...

    期权知识 2020-08-20 587 0
  • iis 503 service unavailable

    iis 503 service unavailable

    前记 需要接手一个在Windows上运行的项目,于是很蛋疼的安装SQL Server等让人极度不适的软件。虽然安装配置MSSQL的过程也是槽点满满,但不是本文的重点。本文记录的是解决IIS的503问题,个人认为这种情况一般人不会碰到。 过程 IIS里新建一个站点,启动后打开浏览器输入”localhost”,直接出现404页面。马上意识到绑定了主机名的缘故,好吧我忍了,改完host用域名访问:503 service unavailable。本来就对IIS不熟悉,猝不及防的错误更让人一下蒙了,头脑中满是黑人...

    期权知识 2020-08-20 632 0
  • Windows快速删除大量文件的办法(吐槽!)

    Windows快速删除大量文件的办法(吐槽!)

    前提回顾 上篇“iis 503 service unavailable”刚写完没多久,忍不住又来吐槽一下坑货Windows! 故事的起因当然是从使用Windows做服务器操作系统开始,代理服务器在硬盘上缓存了几十G的数据。今天接到需求要清空文件,于是开始了痛苦的文件删除过程。 按照常规做法,shift + Del直接物理灭绝完事。但是不争气的Windows忙着不停计算文件大小,十几分钟过去了还没开始干活!Linux上rm -rf /分分钟能把几百G的清盘数据清空,这方面Windows这货完美阐释龟速!...

    期权知识 2020-08-20 599 0