使用 Scoop 安装 PHP

为了学习而在Windows环境下使用XAMPP,后来成为了Mac用户,开始使用Docker,并且在Windows上主要使用Docker。但是由于一些原因,决定尝试使用Scoop仅安装PHP,这是我的临时记录。

暫時先更新一下Scoop。

scoop update
Updating Scoop...
Updating 'main' bucket...
error: Your local changes to the following files would be overwritten by merge:
        bucket/amass.json
        bucket/bombardier.json
        bucket/drmemory.json
        bucket/dynamorio.json
        bucket/gitleaks.json
        bucket/gosec.json
        bucket/grype.json
        bucket/kcptun.json
        bucket/lua-language-server.json
        bucket/retdec.json
        bucket/swift.json
        bucket/syft.json
        bucket/z3.json
Please commit your changes or stash them before you can merge.
Aborting
Scoop was updated successfully!

似乎已经进行了更新。

暫時去找一個看起來符合的。

scoop search php
Results from local buckets...

Name    Version Source Binaries
----    ------- ------ --------
php-nts 8.1.11  main
php     8.1.11  main

暂时先安装

scoop install php

暫時看起來可以但實際上卻做不到。

WARN  Purging previous failed installation of php.
ERROR 'php' isn't installed correctly.
Removing older version (8.1.11).
'php' was uninstalled.
Installing 'php' (8.1.11) [64bit] from main bucket
リモート サーバーがエラーを返しました: (404) 見つかりません
URL https://windows.php.net/downloads/releases/php-8.1.11-Win32-vs16-x64.zip is not valid

听起来好像只需要添加一个桶。

scoop bucket add php
Checking repo... OK
The php bucket was added successfully

我会试着确认

scoop search php

塞得满满的

Results from local buckets...

Name          Version Source Binaries
----          ------- ------ --------
php-nts       8.1.11  main
php           8.1.11  main
php5.2.10-nts 5.2.10  php
php5.2.10     5.2.10  php
php5.2.11-nts 5.2.11  php
php5.2.11     5.2.11  php
php5.2.12-nts 5.2.12  php
php5.2.12     5.2.12  php
php5.2.13-nts 5.2.13  php
php5.2.13     5.2.13  php
php5.2.14-nts 5.2.14  php
php5.2.14     5.2.14  php
php5.2.15-nts 5.2.15  php
php5.2.15     5.2.15  php
php5.2.16-nts 5.2.16  php
php5.2.16     5.2.16  php
php5.2.17-nts 5.2.17  php
php5.2.17     5.2.17  php
php5.2.6-nts  5.2.6   php
php5.2.6      5.2.6   php
php5.2.7-nts  5.2.7   php
php5.2.7      5.2.7   php
php5.2.8-nts  5.2.8   php
php5.2.8      5.2.8   php
php5.2.9-nts  5.2.9   php
php5.2.9      5.2.9   php
php5.2        5.2.17  php
php5.3-nts    5.3.29  php
php5.3.0-nts  5.3.0   php
php5.3.0      5.3.0   php
php5.3.1-nts  5.3.1   php
php5.3.1      5.3.1   php
php5.3.10-nts 5.3.10  php
php5.3.10     5.3.10  php
php5.3.11-nts 5.3.11  php
php5.3.11     5.3.11  php
php5.3.12-nts 5.3.12  php
php5.3.12     5.3.12  php
php5.3.13-nts 5.3.13  php
php5.3.13     5.3.13  php
php5.3.14-nts 5.3.14  php
php5.3.14     5.3.14  php
php5.3.15-nts 5.3.15  php
php5.3.15     5.3.15  php
php5.3.16-nts 5.3.16  php
php5.3.16     5.3.16  php
php5.3.17-nts 5.3.17  php
php5.3.17     5.3.17  php
php5.3.18-nts 5.3.18  php
php5.3.18     5.3.18  php
php5.3.19-nts 5.3.19  php
php5.3.19     5.3.19  php
php5.3.2-nts  5.3.2   php
php5.3.2      5.3.2   php
php5.3.20-nts 5.3.20  php
php5.3.20     5.3.20  php
php5.3.21-nts 5.3.21  php
php5.3.21     5.3.21  php
php5.3.22-nts 5.3.22  php
php5.3.22     5.3.22  php
php5.3.23-nts 5.3.23  php
php5.3.23     5.3.23  php
php5.3.24-nts 5.3.24  php
php5.3.24     5.3.24  php
php5.3.25-nts 5.3.25  php
php5.3.25     5.3.25  php
php5.3.26-nts 5.3.26  php
php5.3.26     5.3.26  php
php5.3.27-nts 5.3.27  php
php5.3.27     5.3.27  php
php5.3.28-nts 5.3.28  php
php5.3.28     5.3.28  php
php5.3.29-nts 5.3.29  php
php5.3.29     5.3.29  php
php5.3.3-nts  5.3.3   php
php5.3.3      5.3.3   php
php5.3.4-nts  5.3.4   php
php5.3.4      5.3.4   php
php5.3.5-nts  5.3.5   php
php5.3.5      5.3.5   php
php5.3.6-nts  5.3.6   php
php5.3.6      5.3.6   php
php5.3.7-nts  5.3.7   php
php5.3.7      5.3.7   php
php5.3.8-nts  5.3.8   php
php5.3.8      5.3.8   php
php5.3.9-nts  5.3.9   php
php5.3.9      5.3.9   php
php5.3        5.3.29  php
php5.4-nts    5.4.45  php
php5.4.0-nts  5.4.0   php
php5.4.0      5.4.0   php
php5.4.1-nts  5.4.1   php
php5.4.1      5.4.1   php
php5.4.10-nts 5.4.10  php
php5.4.10     5.4.10  php
php5.4.11-nts 5.4.11  php
php5.4.11     5.4.11  php
php5.4.12-nts 5.4.12  php
php5.4.12     5.4.12  php
php5.4.13-nts 5.4.13  php
php5.4.13     5.4.13  php
php5.4.14-nts 5.4.14  php
php5.4.14     5.4.14  php
php5.4.15-nts 5.4.15  php
php5.4.15     5.4.15  php
php5.4.16-nts 5.4.16  php
php5.4.16     5.4.16  php
php5.4.17-nts 5.4.17  php
php5.4.17     5.4.17  php
php5.4.18-nts 5.4.18  php
php5.4.18     5.4.18  php
php5.4.19-nts 5.4.19  php
php5.4.19     5.4.19  php
php5.4.2-nts  5.4.2   php
php5.4.2      5.4.2   php
php5.4.20-nts 5.4.20  php
php5.4.20     5.4.20  php
php5.4.21-nts 5.4.21  php
php5.4.21     5.4.21  php
php5.4.22-nts 5.4.22  php
php5.4.22     5.4.22  php
php5.4.23-nts 5.4.23  php
php5.4.23     5.4.23  php
php5.4.24-nts 5.4.24  php
php5.4.24     5.4.24  php
php5.4.25-nts 5.4.25  php
php5.4.25     5.4.25  php
php5.4.26-nts 5.4.26  php
php5.4.26     5.4.26  php
php5.4.27-nts 5.4.27  php
php5.4.27     5.4.27  php
php5.4.28-nts 5.4.28  php
php5.4.28     5.4.28  php
php5.4.29-nts 5.4.29  php
php5.4.29     5.4.29  php
php5.4.3-nts  5.4.3   php
php5.4.3      5.4.3   php
php5.4.30-nts 5.4.30  php
php5.4.30     5.4.30  php
php5.4.31-nts 5.4.31  php
php5.4.31     5.4.31  php
php5.4.32-nts 5.4.32  php
php5.4.32     5.4.32  php
php5.4.33-nts 5.4.33  php
php5.4.33     5.4.33  php
php5.4.34-nts 5.4.34  php
php5.4.34     5.4.34  php
php5.4.35-nts 5.4.35  php
php5.4.35     5.4.35  php
php5.4.36-nts 5.4.36  php
php5.4.36     5.4.36  php
php5.4.37-nts 5.4.37  php
php5.4.37     5.4.37  php
php5.4.38-nts 5.4.38  php
php5.4.38     5.4.38  php
php5.4.39-nts 5.4.39  php
php5.4.39     5.4.39  php
php5.4.4-nts  5.4.4   php
php5.4.4      5.4.4   php
php5.4.40-nts 5.4.40  php
php5.4.40     5.4.40  php
php5.4.41-nts 5.4.41  php
php5.4.41     5.4.41  php
php5.4.42-nts 5.4.42  php
php5.4.42     5.4.42  php
php5.4.43-nts 5.4.43  php
php5.4.43     5.4.43  php
php5.4.44-nts 5.4.44  php
php5.4.44     5.4.44  php
php5.4.45-nts 5.4.45  php
php5.4.45     5.4.45  php
php5.4.5-nts  5.4.5   php
php5.4.5      5.4.5   php
php5.4.6-nts  5.4.6   php
php5.4.6      5.4.6   php
php5.4.7-nts  5.4.7   php
php5.4.7      5.4.7   php
php5.4.8-nts  5.4.8   php
php5.4.8      5.4.8   php
php5.4.9-nts  5.4.9   php
php5.4.9      5.4.9   php
php5.4        5.4.45  php
php5.5-nts    5.5.38  php
php5.5.0-nts  5.5.0   php
php5.5.0      5.5.0   php
php5.5.1-nts  5.5.1   php
php5.5.1      5.5.1   php
php5.5.10-nts 5.5.10  php
php5.5.10     5.5.10  php
php5.5.11-nts 5.5.11  php
php5.5.11     5.5.11  php
php5.5.12-nts 5.5.12  php
php5.5.12     5.5.12  php
php5.5.13-nts 5.5.13  php
php5.5.13     5.5.13  php
php5.5.14-nts 5.5.14  php
php5.5.14     5.5.14  php
php5.5.15-nts 5.5.15  php
php5.5.15     5.5.15  php
php5.5.16-nts 5.5.16  php
php5.5.16     5.5.16  php
php5.5.17-nts 5.5.17  php
php5.5.17     5.5.17  php
php5.5.18-nts 5.5.18  php
php5.5.18     5.5.18  php
php5.5.19-nts 5.5.19  php
php5.5.19     5.5.19  php
php5.5.2-nts  5.5.2   php
php5.5.2      5.5.2   php
php5.5.20-nts 5.5.20  php
php5.5.20     5.5.20  php
php5.5.21-nts 5.5.21  php
php5.5.21     5.5.21  php
php5.5.22-nts 5.5.22  php
php5.5.22     5.5.22  php
php5.5.23-nts 5.5.23  php
php5.5.23     5.5.23  php
php5.5.24-nts 5.5.24  php
php5.5.24     5.5.24  php
php5.5.25-nts 5.5.25  php
php5.5.25     5.5.25  php
php5.5.26-nts 5.5.26  php
php5.5.26     5.5.26  php
php5.5.27-nts 5.5.27  php
php5.5.27     5.5.27  php
php5.5.28-nts 5.5.28  php
php5.5.28     5.5.28  php
php5.5.29-nts 5.5.29  php
php5.5.29     5.5.29  php
php5.5.3-nts  5.5.3   php
php5.5.3      5.5.3   php
php5.5.30-nts 5.5.30  php
php5.5.30     5.5.30  php
php5.5.31-nts 5.5.31  php
php5.5.31     5.5.31  php
php5.5.32-nts 5.5.32  php
php5.5.32     5.5.32  php
php5.5.33-nts 5.5.33  php
php5.5.33     5.5.33  php
php5.5.34-nts 5.5.34  php
php5.5.34     5.5.34  php
php5.5.35-nts 5.5.35  php
php5.5.35     5.5.35  php
php5.5.36-nts 5.5.36  php
php5.5.36     5.5.36  php
php5.5.37-nts 5.5.37  php
php5.5.37     5.5.37  php
php5.5.38-nts 5.5.38  php
php5.5.38     5.5.38  php
php5.5.4-nts  5.5.4   php
php5.5.4      5.5.4   php
php5.5.5-nts  5.5.5   php
php5.5.5      5.5.5   php
php5.5.6-nts  5.5.6   php
php5.5.6      5.5.6   php
php5.5.7-nts  5.5.7   php
php5.5.7      5.5.7   php
php5.5.8-nts  5.5.8   php
php5.5.8      5.5.8   php
php5.5.9-nts  5.5.9   php
php5.5.9      5.5.9   php
php5.5        5.5.38  php
php5.6-nts    5.6.40  php
php5.6.0-nts  5.6.0   php
php5.6.0      5.6.0   php
php5.6.1-nts  5.6.1   php
php5.6.1      5.6.1   php
php5.6.10-nts 5.6.10  php
php5.6.10     5.6.10  php
php5.6.11-nts 5.6.11  php
php5.6.11     5.6.11  php
php5.6.12-nts 5.6.12  php
php5.6.12     5.6.12  php
php5.6.13-nts 5.6.13  php
php5.6.13     5.6.13  php
php5.6.14-nts 5.6.14  php
php5.6.14     5.6.14  php
php5.6.15-nts 5.6.15  php
php5.6.15     5.6.15  php
php5.6.16-nts 5.6.16  php
php5.6.16     5.6.16  php
php5.6.17-nts 5.6.17  php
php5.6.17     5.6.17  php
php5.6.18-nts 5.6.18  php
php5.6.18     5.6.18  php
php5.6.19-nts 5.6.19  php
php5.6.19     5.6.19  php
php5.6.2-nts  5.6.2   php
php5.6.2      5.6.2   php
php5.6.20-nts 5.6.20  php
php5.6.20     5.6.20  php
php5.6.21-nts 5.6.21  php
php5.6.21     5.6.21  php
php5.6.22-nts 5.6.22  php
php5.6.22     5.6.22  php
php5.6.23-nts 5.6.23  php
php5.6.23     5.6.23  php
php5.6.24-nts 5.6.24  php
php5.6.24     5.6.24  php
php5.6.25-nts 5.6.25  php
php5.6.25     5.6.25  php
php5.6.26-nts 5.6.26  php
php5.6.26     5.6.26  php
php5.6.27-nts 5.6.27  php
php5.6.27     5.6.27  php
php5.6.28-nts 5.6.28  php
php5.6.28     5.6.28  php
php5.6.29-nts 5.6.29  php
php5.6.29     5.6.29  php
php5.6.3-nts  5.6.3   php
php5.6.3      5.6.3   php
php5.6.4-nts  5.6.4   php
php5.6.4      5.6.4   php
php5.6.5-nts  5.6.5   php
php5.6.5      5.6.5   php
php5.6.6-nts  5.6.6   php
php5.6.6      5.6.6   php
php5.6.7-nts  5.6.7   php
php5.6.7      5.6.7   php
php5.6.8-nts  5.6.8   php
php5.6.8      5.6.8   php
php5.6.9-nts  5.6.9   php
php5.6.9      5.6.9   php
php5.6        5.6.40  php
php7.0-nts    7.0.33  php
php7.0.0-nts  7.0.0   php
php7.0.0      7.0.0   php
php7.0.1-nts  7.0.1   php
php7.0.1      7.0.1   php
php7.0.10-nts 7.0.10  php
php7.0.10     7.0.10  php
php7.0.11-nts 7.0.11  php
php7.0.11     7.0.11  php
php7.0.12-nts 7.0.12  php
php7.0.12     7.0.12  php
php7.0.13-nts 7.0.13  php
php7.0.13     7.0.13  php
php7.0.14-nts 7.0.14  php
php7.0.14     7.0.14  php
php7.0.15-nts 7.0.15  php
php7.0.15     7.0.15  php
php7.0.16-nts 7.0.16  php
php7.0.16     7.0.16  php
php7.0.17-nts 7.0.17  php
php7.0.17     7.0.17  php
php7.0.18-nts 7.0.18  php
php7.0.18     7.0.18  php
php7.0.2-nts  7.0.2   php
php7.0.2      7.0.2   php
php7.0.3-nts  7.0.3   php
php7.0.3      7.0.3   php                                                                       
php7.0.4-nts  7.0.4   php                                                                       
php7.0.4      7.0.4   php                                                                       
php7.0.5-nts  7.0.5   php                                                                       
php7.0.5      7.0.5   php
php7.0.6-nts  7.0.6   php
php7.0.6      7.0.6   php
php7.0.7-nts  7.0.7   php
php7.0.7      7.0.7   php
php7.0.8-nts  7.0.8   php
php7.0.8      7.0.8   php
php7.0.9-nts  7.0.9   php
php7.0.9      7.0.9   php
php7.0        7.0.33  php
php7.1-nts    7.1.33  php
php7.1.0-nts  7.1.0   php
php7.1.0      7.1.0   php
php7.1.1-nts  7.1.1   php
php7.1.1      7.1.1   php
php7.1.2-nts  7.1.2   php
php7.1.2      7.1.2   php
php7.1.3-nts  7.1.3   php
php7.1.3      7.1.3   php
php7.1.4-nts  7.1.4   php
php7.1.4      7.1.4   php
php7.1        7.1.33  php
php7.2-nts    7.2.34  php
php7.2        7.2.34  php
php7.3-nts    7.3.33  php
php7.3        7.3.33  php
php7.4-nts    7.4.33  php
php7.4        7.4.33  php
php8.0-nts    8.0.30  php
php8.0        8.0.30  php
php8.1-nts    8.1.25  php
php8.1        8.1.25  php
php8.2-nts    8.2.12  php
php8.2        8.2.12  php

指定版本进行安装

scoop install php8.2
Installing 'php8.2' (8.2.12) [64bit] from php bucket
php-8.2.12-Win32-vs16-x64.zip (30.4 MB) [=========================================================================================================================================================================================] 100%
Checking hash of php-8.2.12-Win32-vs16-x64.zip ... ok.
Extracting php-8.2.12-Win32-vs16-x64.zip ... done.
Linking ~\scoop\apps\php8.2\current => ~\scoop\apps\php8.2\8.2.12
Creating shim for 'php'.
Creating shim for 'php-cgi'.
Persisting conf.d
Running post_install script...
'php8.2' (8.2.12) was installed successfully!
'php8.2' suggests installing 'extras/vcredist2019'.

你可以尝试确认是否已安装。

php -v
PHP 8.2.12 (cli) (built: Oct 24 2023 21:15:15) (ZTS Visual C++ 2019 x64)
Copyright (c) The PHP Group
Zend Engine v4.2.12, Copyright (c) Zend Technologies

转换方法

如果安装了不同版本,需要切换的话。

scoop reset php8.2
bannerAds