PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认

2020-01-06 23:34:07

参考地址 PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认

    由于我当前使用的 Mac 电脑的 PHP 版本比较低(7.1.19),许多新特性和功能不支持,现准备将其升级成最新版(7.3.2),具体步骤如下。

1,通过 brew 安装 php

在终端输执行如下命令,不需要指定安装 php 版本,它会自动升级到最新版本,同时 brew 会自动 update

1
brew install php


2,启用新版本的 php

(1)安装后我们在终端执行 php -version 会发现版本还是老的:

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


(2)首先我们执行如下命令打开 .bash_profile

1
sudo vim ~/.bash_profile


(3)按下 i 键启用编辑模式,并在末尾增加如下两行内容。

1
2
PATH="$(brew --prefix php)/bin:$PATH"
export PYTHON_ENV=development


(4)然后按下 esc 退出编辑模式。 接着组合按下 shift + : 开启命令,然后输入 wq 回车,保存退出。

(5)最后我们在终端中执行如下命令即可 :

1
source ~/.bash_profile


(6)再次在终端执行 php -version 会发现已经使用更新版本的 php 了:

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


3,重新安装 Apache

(1)经过上面操作后,由于我之前使用的是系统自带的 Apache,当创建一个 php 页面输出 phpinfo() 信息会发现,php 版本还是使用老的:

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


(2)这是由于系统自带的 Apache 与 Homebrew 一起使用会有问题,因为 Apple 在此版本中删除了一些必需的脚本。首先我们依次执行下面命令关闭内置的 Apache

1
2
sudo apachectl stop
sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist 2>/dev/null


(3)接着使用 Brew 安装新的 Apache 版本:

1
brew install httpd


(4)执行如下命令启动新 Apache 服务器:

1
sudo brew services start httpd


(5)新 Apache 服务器默认端口是 8080,我们使用浏览器访问 http://localhost:8080 测试下效果:

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


(6)接着我们要给 Apache 增加 php 模块支持,在终端中执行如下命令编辑 httpd.conf  文件:

1
sudo vim /usr/local/etc/httpd/httpd.conf


(7)按下 i 键进入编辑模式,增加如下几行配置:

1
2
3
4
LoadModule php7_module /usr/local/opt/php/lib/httpd/modules/libphp7.so
<FilesMatch \.php$>
        SetHandler application/x-httpd-php
</FilesMatch>


(8)接着找到如下节点:

1
2
3
<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>


将其改成如下内容:

1
2
3
<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php
</IfModule>


(9)最后按下 esc 退出编辑模式。 接着组合按下 shift + : 开启命令,然后输入 wq 回车,保存退出。

(10)在 /usr/local/var/www 下放置创建一个 php 页面输出 phpinfo() 信息会发现,已经是使用新版的 php 了:

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


4,修改 Apache 网站根目录

    默认网站根目录是 /usr/local/var/www,如果想切换到自定义的目录下,比如:/Users/hanggg/wwwroot。可以通过如下操作来实现。

(1)使用 vim 命令编辑 httpd.conf 文件,找到 DocumentRoot 和 Directory 替换成 /Users/hangge/wwwroot

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认


(2)保存退出后,执行如下命令重启 Apache 服务器即可。

1
sudo brew services restart httpd


5,修改 Apache 服务器端口

(1)默认服务器端口是 8080,如果想要改成 80。同样是修改 httpd.conf 文件。

原文:PHP - 将macOS系统下的PHP升级成最新版本(7.3),并设为默认

(2)保存退出后,执行如下命令重启 Apache 服务器即可。

1
sudo brew services restart httpd


  • 2021-01-22 22:21:41

    emcc编译命令介绍

    这个输入文件file,既可以是clang可以编译的C/C++语言,也可以是二进制形式的llvm bitcode或者人类可读形式的llvm assembly文件。

  • 2021-01-22 22:25:51

    How to protect your JS code by WebAssembly

    对于iOS或是Android来说,我们可以将相关的算法通过C/C++进行编写,然后编译为dylib或是so并进行混淆以此来增加破解的复杂度,但是对于前端来说,并没有类似的技术可以使用。当然,自从asm.js及WebAssembly的全面推进后,我们可以使用其进一步增强我们核心代码的安全性,但由于asm.js以及WebAssembly标准的开放,其安全强度也并非想象中的那么美好。

  • 2021-01-24 09:50:16

    UICollectionViewCell cell高度自适应

    本来想使用UICollectionView来作为整体的布局,并且不再使用UITableView,但是发现高度不固定的布局,UICollectionView没啥优势呀,至少我没找到好的方法,从网上看的是,要自定义cell,并且继承preferredLayoutAttributesFittingAttributes

  • 2021-01-24 10:08:57

    ios后台播放视频

    很多开发者以为AVPlayer不能在后台播放视频:应用退到后台,但能播放视频的声音(ps:不是通过切换相同的音频来实现),我在开发SDK的过程中也遇到这个需求,所幸解决了这个问题。下面我就来讲讲实现的过程。