1.基本容易混淆的概念

pecl

php的社区贡献扩展库,全称为PHP Extension Community Library, 是php的底层库, 使用C语言编写

pear

php的应用扩展库,全称为PHP Extension And Repository, 是php的应用库, 使用php编写,使用include包含

pcre

是兼容perl的正则表达式

preg

正则表达式函数的前缀

2.在windows下安装php

使用解压缩免安装版:

首先去官网下载对应的zip压缩包, 下载地址为http://www.php.net/downloads.php

解压后配置php.ini即可

使用安装器安装:

使用Wix Toolkit编译形成PHPInstaller.exe可执行文件,Wix Toolkit的官方地址为http://wix.sourceforge.net

3.在linux下安装php

4.在windows下安装php扩展

5.在linux下安装php扩展

6.在mac系统安装mysql+apache+php

首先,下载在官网mysql(dmg文件,mysql5.6),apache源码版(apache2.2),php的源码版(php5.6)

mysql-5.6.38-mac10.12-x86_64.dmg

httpd-2.2.34.tar.gz

php-5.6.32.tar.gz

再者,分别解压apache源码包和php源码包

tar zxvf httpd-2.2.34.tar.gz

tar zxvf php-5.6.32.tar.gz

再者,执行安装mysql及编译安装apace和php

双击执行mysql的dmg文件进行傻瓜式安装

使用命令编译安装apache:

cd httpd-2.2.34

./configure --enable-so

sudo make

sudo make install

使用命令编译安装php:

cd php-5.6.32

./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql

sudo make

sudo make install

sudo cp php.ini-development /usr/local/bin/php.ini

最后,检查nginx和php:

检查httpd.conf,修改ip地址为127.0.0.1

将#ServerName www.web8cn.com:80改为ServerName 127.0.0.1:80

检查httpd.conf,确保apache已经加载了php:

LoadModule php5_module modules/php5lib.php

检查php.ini,查看哪些类型的文件调用php解释器处理

<FilesMatch \.php$>

  SetHandler application/x-httpd-php  

</FilesMatch>

显示代码高亮

<FilesMatch "\.php$">

  SetHandler application/x-httpd-php

</FilesMatch>

最后,启动apache

/usr/local/apache2/bin/apachectl start

在浏览器中输入localhiost回车后显示it works!证明环境搭建成功

PHP的安装,编译,扩展工具的更多相关文章

  1. PHP 生成、识别二维码及安装相关扩展/工具

    2018-02-20 00:30:26  更新:推荐新扩展(极力推荐) 这篇文章里用的两个二维码扩展都有些问题和麻烦:phpqrcode(生成二维码)的源码有点小 bug: 而 php-zbarcod ...

  2. 实用Jupyter Notebook扩展工具——提升你的工作效率

    Jupyter Notebook 现已成为数据分析,机器学习的必备工具.因为它可以让数据分析师集中精力向用户解释整个分析过程.通过安装一些扩展工具,可以让你在Jupyter Notebook上的工作效 ...

  3. 【转】如何编译安装PHP扩展

    本文参考 一开始安装PHP的时候,我们并不知道需要哪些扩展,所以只有等到我们真正用到的时候才想办法去安装. 安装PHP扩展最简单的办法就是 sudo apt-get install php5-xxx ...

  4. win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件

    win10下通过编译源码方式在chrome中成功安装react-devtools开发工具插件   1.去git上下载react-devtools文件到本地,https://github.com/fac ...

  5. 编译安装PHP7并安装Redis扩展Swoole扩展

    编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机器上已经有编译安装过php5.3以上的版本,从而依赖库都有了 本php7是编译成fpm-php 使用的, 如果是apache那么 ...

  6. linux下包不重新编译php安装openssl 扩展

    今天在刚装好的centos上安装composer,老是报错,提示不安全的,后来发现是由于https的缘故,需要openssl,可能是开始装php的时候没有安装此扩展,网上有好多方案,一开始我认为只有重 ...

  7. 2018/04/25 基于 编译安装的 PHP7 安装 swoole 扩展

    在上一篇文章我们知道了如何去编译安装一个自己需要的 PHP 版本. 2018/04/25 PHP7的编译安装 这里还没有完,我们还需要安装我们的扩展,才算完成今天的任务. -- 下载扩展 还是官网下载 ...

  8. Linux上安装编译工具链

    在Linux上安装编译工具链,安装它会依赖dpkg-dev,g++,libc6-dev,make等,所以安装之后这些依赖的工具也都会被安装.ubuntu软件库中这么描述 Informational l ...

  9. Linux下编译安装PHP扩展redis

    [Redis] 先安装tcl: yum install tcl [下载和安装] 官网http://redis.io/  下载最新的稳定版本,这里是3.2.0, 然后解压文件并进入. $ sudo ta ...

随机推荐

  1. mysql count与sum的区别

    一.count()的结果为>=0           sum()结果可能是null 二.count()计算的行数               sum()计算的是某列的求和

  2. 很好的一篇eureka的讲解文章

    文章地址 http://nobodyiam.com/2016/06/25/dive-into-eureka/

  3. 类似Visual Studio一样,使用Qt Creator管理多个项目,创建子项目

    1. 简介 QtCreator是一个十分好用的跨平台IDE,由于最近需要在Windows和Mac同时写一个C++的代码,使用VS和XCode不能实现项目的统一管理(可以使用cmake来组织源码,但是每 ...

  4. Lauterbach TRACE32技巧小集

    1. TRACE32中实现类container_of功能 假设现在我只知道一个全局变量成员tv2的地址,类型是tvec_base.我想知道这个全局变量的地址怎么办? struct tvec_base ...

  5. Luogu2045 方格取数加强版(K取方格数) 费用流

    题目传送门 题意:给出一个$N \times N$的方格,每个格子中有一个数字.你可以取$K$次数,每次取数从左上角的方格开始,每一次只能向右或向下走一格,走到右下角结束,沿路的方格中的数字将会被取出 ...

  6. Data Partitioning Guidance

    在很多大规模的解决方案中,数据都是分成单独的分区,可以分别进行管理和访问的.而分割数据的策略必须仔细的斟酌才能够最大限度的提高效益,同时最大限度的减少不利影响.数据的分区可以极大的提升可扩展性,降低争 ...

  7. Luogu P3825 [NOI2017]游戏

    这道题看上去NPC啊,超级不可做的样子. 我们先分析一下简单的情形:没有\(x\)地图 此时每个地图由于限制掉一种汽车,那么显然只会有两种选择. 再考虑到限制的情况,那么大致做法就很显然了--2-SA ...

  8. vue 路由拦截、axios请求拦截

    路由拦截 项目中,有些页面需要登录后才能进入,例如,在某页面A,用户在操作前需要先进入登录页(此时需要将上一页的地址(/survey/start)作为query存入login页面的地址中,如: htt ...

  9. [UWP 自定义控件]了解模板化控件(6):使用附加属性

    1. 基本需求 之前的ContentView2添加了PointerOver等效果,和TextBox等本来就有Header的控件放在一起反而变得鹤立鸡群. 为了解决这个问题,这次把ContentView ...

  10. bootstrap完善按钮组bug

    .btn.active { border: 1px solid #ff9400 !important; color: #ff9400 !important; } <div class=" ...