分类存档: PHP - 第3页

如何在CentOS 7 上安装Composer

前期准备 安装前请务必确保已经正确安装了 PHP。打开命令行窗口并执行 php -v 查看是否正确输出版本号。 安装Composer 打开命令行并执行下列命令安装最新版本的 Composer (以下指令摘自 https://getcomposer.org/download/ ,请前往查看最新的安装指令): 执行第一条命令下载下来的 composer-setup.php 脚本将简单的检测 php.i …

继续阅读 »

如何在CentOS下PHP多版本共存时指定命令行状态默认使用的PHP版本

问题 在CentOS上安装了4个版本的PHP,但在命令行状态默认使用的php版本是最后安装的那个PHP版本,但我想指定命令行的PHP版本。 分析过程 1、多版本的话要先跟踪一下php命令是调用哪个目录的,可以使用找到后一般是个链接文件,删掉(或重命名)后重新建立一个新的链接文件到新版目录即可。【行不通,没发现有这个链接文件】 2、在 Linux 下执行 php 脚本时通常是可以使用以下命令: #/ …

继续阅读 »

CURL错误状态码汇总

CURL状态码列表 状态码 状态原因 解释 0 正常访问 1 错误的协议 未支持的协议。此版cURL 不支持这一协议。 2 初始化代码失败 初始化失败。 3 URL格式不正确 URL 格式错误。语法不正确。 4 请求协议错误 5 无法解析代理 无法解析代理。无法解析给定代理主机。 6 无法解析主机地址 无法解析主机。无法解析给定的远程主机。 7 无法连接到主机 无法连接到主机。 8 远程服务器不可 …

继续阅读 »

PHP魔术常量与魔术方法

魔术常量 PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了。 有八个魔术常量它们的值随着它们在代码中的位置改变而改变。例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定。这些特殊的常量不区分大小写,如下: 几个 PHP 的“魔术常量” 名称 说明 __LINE__ 文件中的 …

继续阅读 »

PHP的cURL选项CURLOPT_SSL_VERIFYPEER详解

在开发微信支付的过程中,遇到了关于cURL加密传输的问题,做下记录方便今后查阅。 提交数据到https时,需要pem证书来加密。 我们使用浏览器访问https的时候,浏览器会自动加载网站的安全证书进行加密。但是你用curl请求https时,没有通过浏览器,就只有自己手动增加一个安全证书进行加密。 代码示例: 知识点摘要: CURLOPT_SSL_VERIFYPEER 设置为FALSE 禁止 cUR …

继续阅读 »

PHP异常处理try-catch-finally及捕获异常实例详解

详情请阅读: 官方手册:http://php.net/manual/zh/language.exceptions.php php中try catch捕获异常实例详解:http://www.jb51.net/article/57688.htm 异常处理try-catch-finally:http://www.cnblogs.com/dytl/p/3725912.html

PHP命名空间(Namespaces)详解及使用经验总结

详情请阅读: 官方手册:http://php.net/manual/zh/language.namespaces.php PHP命名空间(Namespace)的使用详解:http://www.cnblogs.com/kuyuecs/p/3556421.html

PHPExcel遍历读取Excel文件内容示例

项目需要读取Excel的内容,从百度搜索了下,主要有两个选择,第一个是PHPExcelReader,另外一个是PHPExcel。 PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。但是可惜的是不能够支持Excel 2007的格式(.xlsx)。 PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍 …

继续阅读 »

Yii 2通过Composer安装组件出错:Could not open input file: composer.phar

Yii 2官网推荐用Composer安装框架,但是在本地出错:Could not open input file: composer.phar。后来修改了命令行就ok了,难道是我装的Composer跟官网的不同? 把 php composer.phar global require “fxp/composer-asset-plugin:1.0.0” 改成 composer global requi …

继续阅读 »

php.ini memory_limit引起的问题及解决方法详解

故障现象 在运行PHP程序,通常会遇到“Fatal Error: Allowed memory size of xxxxxx bytes exhausted”的错误, 这个意味着PHP脚本使用了过多的内存,并超出了系统对其设置的允许最大内存。 解决这个问题,首先需要查看你的程序是否分配了过多的内存,在程序没有问题的情况下,你可以通过一下方法来增加PHP的内存限制(memory_limit)。 检查 …

继续阅读 »

CentOS下编译安装PHP出现的错误整理

问题:make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1 分析:有时候编译安装PHP,对于大内存服务器来说一般问题不大,但是对于小内存,比如512MB内存的服务器来说,很有可能会出现问题,因为编译过程是一个内存消耗较大的动作。本人近期就遇到一个这样的问题:在512MB内存centos操作系统的去服务器上编译安装某国内云主机,在编译安装PH …

继续阅读 »

phpize是什么及在Linux下用phpize给PHP动态添加扩展

php有很多扩展功能,我们在初次安装的时候并没有安装某些扩展,可能在使用的过程中,又需要用到这些扩展。php提供了一个phpize工具供我们安装需要的扩展。 phpize是干嘛的? phpize是什么东西呢?php官方的说明:http://php.net/manual/zh/install.pecl.phpize.php phpize 命令是用来准备 PHP 扩展库的编译环境的。下面例子中,扩展库 …

继续阅读 »

查看Nginx,Apache,MySQL,PHP上一次安装时的编译参数

有时候nginx,apache,mysql,php编译完了需要看看编译参数。这时就可以通过以下方法查看 nginx编译参数: #/usr/local/nginx/sbin/nginx -V nginx version: nginx/0.6.32 built by gcc 4.1.2 20071124 (Red Hat 4.1.2-42) configure arguments: –user=ww …

继续阅读 »

CentOS6.x 64位下编译安装nginx1.6.x+php5.5.x+mariaDB10.0.x的Shell脚本

以下是CentOS6.x 64位下编译安装nginx1.6.x+php5.5.x+mariaDB10.0.x的Shell脚本,脚本中附带了个人在服务器中常用目录的规划,脚本中所有软件都可以从本站下载,并且已经配置到脚本中。若在安装过程中,发现安装失败,比较大的可能性是系统改成163的源后,用yum安装部分软件没有安装成功(在自动安装过程中,需要多留意是不是因为有部分软件下载失败而导致该软件安装不成 …

继续阅读 »

PHP常用的十种缓存技术

普遍缓存技术 数据缓存:这里所说的数据缓存是指数据库查询PHP缓存机制,每次访问页面的时候,都会先检测相应的缓存数据是否存在,如果不存在,就连接数据库,得到数据,并把查询结果序列化后保存到文件中,以后同样的查询结果就直接从缓存表或文件中获得。 用的最广的例子看Discuz的搜索功能,把结果ID缓存到一个表中,下次搜索相同关键字时先搜索缓存表。 举个常用的方法,多表关联的时候,把附表中的内容生成数组 …

继续阅读 »