php
文章平均质量分 71
风-四方
遥看一片雪,风过十里香。
展开
-
从web服务器谈谈php性能的提升
这里不是说php语言从5.x版本到7.x版本达到的速度的巨大提升。而是想说下从web请求的构架上,有哪些改变。 随着传统的静态页面开发,到动态交互网站,web服务器需要扩展php或者python的服务,来处理业务逻辑和连接数据库。这个时候CGI应运而生。 1.CGI和FastCGI CGI在通讯中起到了一个翻译的作用,把nginx获取的网络请求翻译给php,再把php的执行结果翻译给nginx。举个所有phper都熟悉的东西,$_SERVER全局变量,就是从CGI读取来的。 每当客户请求CGI的时候原创 2020-07-26 22:59:51 · 254 阅读 · 0 评论 -
php 从指定数组中删除一个相同的值
有需求要从一个数组里删除所有值为a的key,并返回新数组 google很容易,有2条高赞 1条是array_search,另一条是array_diff。 于是加上foreach做了测试 代码如下 list($msec, $sec) = explode(' ', microtime()); $start = $sec+$msec; $arr = [];//这里是测试数...原创 2019-12-11 22:31:45 · 445 阅读 · 0 评论 -
命令行向php脚本文件传递参数argc 和 argv
今天接到一个需求,要写php脚本,因为之前没有传过参数,平时web都是GET和POST传参数,所以也就没有在意过这种方式。网上随便搜索了下,很容易就定义到了文档。也不是很麻烦,在此记录下。 主要就是这两部分: argc 获取传递参数的数量 和 argv 获取传递参数的值 例子:写个index.php <?php var_dump($argc); var_dump($argv); ...原创 2019-03-20 20:20:13 · 667 阅读 · 0 评论 -
python 用POST请求php,$_POST接收不到消息
首先来到php文档。已经说的很清楚了。 当 HTTP POST 请求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本。 所以python,请求的时候header中content-type需要是这2种。 index.php <?php $input ...原创 2018-11-25 21:08:25 · 4160 阅读 · 0 评论 -
运算符拾遗(Operators)
今天看到了这里,有一些平时不在意的地方。记录下来。 一、运算符的优先级 其实我不是很在意这个事情,必要的东西都是走括号的。有些东西你不常用,别人也不常用。那么你写出来会浪费别人读代码的时间。不如老老实实用括号来的清晰。 二、??和?: ?? null合并运算符(Null Coalescing Operator),在php7中生效。 isset():检测变量是否设置,并且不是 NUL...原创 2018-10-30 23:20:36 · 260 阅读 · 0 评论 -
ob_start打开输出缓冲(Output Buffering Control)
我是在使用WooCommerce的时候出现了这样的问题。因为WooCommerce中大量使用html直接输出,导致我写的shortcode引用模板文件时,会出现html不在短代码所在位置的问题。 因为Output Buffering Control整个过程比较简单,下面按照文档,简单记录下ob_start的用法。 以下抄自文档 此函数将打开输出缓冲。当输出缓冲激活后,脚本将不会输出内容(除h...原创 2018-10-28 17:42:50 · 293 阅读 · 0 评论 -
记录一次nginx php-fpm环境搭建
为了测试bug,好久不搭环境的我又一次走上不归路,在此记录。 我用的parallel desktop上的centos7 装系统还是很好装的,先添加源 rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm rpm -Uvh https://mirror.webtatic.com...转载 2018-09-16 16:26:25 · 644 阅读 · 0 评论 -
玩坏了的spl_autoload_register
为什么要用spl_autoload_register其实我觉得这一段话基本可以解决所有的问题 尽管 __autoload() 函数也能自动加载类和接口,但更建议使用 spl_autoload_register() 函数。spl_autoload_register() 提供了一种更加灵活的方式来实现类的自动加载(同一个应用中,可以支持任意数量的加载器,比如第三方库中的)。因此,不再建议使用 __a...原创 2018-09-02 23:13:39 · 4467 阅读 · 0 评论 -
如何使用php 命名空间(Namespaces)(3)关键字和自动加载
原文地址:https://www.sitepoint.com/how-to-use-php-namespaces-part-3-keywords-and-autoloading/在前两篇文章中,我们看到了命名空间的基础,引入以及别名的使用。在最后的这一篇中,我们来讨论下更进阶的东西。1.__NAMESPACE____NAMESPACE__是用来返回页面命名空间名称的。在全局的情况,他将返回空字符串...翻译 2018-05-08 17:44:51 · 479 阅读 · 0 评论 -
如何使用php 命名空间(Namespaces)(2)引入和化名
原文地址:https://www.sitepoint.com/php-namespaces-import-alias-resolution/在前面一篇,我们讨论了为什么php的命名空间有用,以及命名空间的一些语法上的关键点。在这一篇,我们将讲解如何使用它。首先,我将会写两段代码,他们的区别仅仅是命名空间的名字不同。Lib1.php<?php // application library 1 ...翻译 2018-05-08 17:44:29 · 1205 阅读 · 0 评论 -
如何使用php 命名空间(Namespaces)(1)基石
命名空间是php5.3的一个标志性改变,他很接近C#和Java,看起来能对php应用的结构带来更好的改变。1.为什么我们需要命名空间?伴随着你php代码量的增加,某个function或者class name可能被声明过。并且在引入第三方组件的时候,这个问题被放大了。好比有好多的的代码去实现数据库类怎么办?知道现在,唯一的解决方案是加长你的class/function名字。举个例子Wordpress...翻译 2018-05-08 17:44:41 · 307 阅读 · 0 评论 -
CentOS 7 + Apache2.4 + php7 + mysql5.6
在网上找了很多php7的安装,不知道为什么,Apache总是关联不到php,直到我看到了这篇。附地址:https://www.howtoforge.com/tutorial/centos-lamp-server-apache-mysql-php/不想阅读的朋友可以直接执行代码,其中vi的部分需要改文件,不会的正文中有。rpm --import /etc/pki/rpm-gpg/RPM-GPG-KE...翻译 2018-05-05 16:05:37 · 4677 阅读 · 0 评论