123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/usr/bin/env bash
- function download_file() {
- downloader="wget"
- type wget >/dev/null 2>&1 || { downloader="curl"; }
- if [ "$downloader" = "wget" ]; then
- _down_prefix="O"
- else
- _down_prefix="o"
- fi
- _down_symbol=0
- if [ ! -f "$2" ]; then
- echo $1
- $downloader "$1" -$_down_prefix "$2" >/dev/null 2>&1 && \
- echo "完成!" && _down_symbol=1
- else
- echo "已存在!" && _down_symbol=1
- fi
- if [ $_down_symbol == 0 ]; then
- echo "失败!请检查网络连接!"
- rm -rf "$2"
- return 1
- fi
- return 0
- }
- function test_composer_and_php() {
- succ=$("$(pwd)/runtime/composer" -n about | grep Manage)
- if [ "$succ" = "" ]; then
- echo "Download PHP binary and composer failed!"
- return 1
- fi
- return 0
- }
- if [ "$(uname -s)" != "Linux" ]; then
- echo "Only support Linux!!!"
- exit 1
- fi
- ZM_PHP_VERSION="7.4"
- if [ "$ZM_DOWN_PHP_VERSION" != "" ]; then
- ZM_PHP_VERSION="$ZM_DOWN_PHP_VERSION"
- echo "Using custom PHP version: $ZM_PHP_VERSION"
- fi
- mkdir "$(pwd)/runtime" >/dev/null 2>&1
- if [ ! -f "$(pwd)/runtime/php" ]; then
- download_file "https://dl.zhamao.xin/php-bin/down.php?php_ver=$ZM_PHP_VERSION&arch=$(uname -m)" "$(pwd)/runtime/php.tar.gz"
- if [ $? -ne 0 ]; then
- exit 1
- fi
- tar -xf "$(pwd)/runtime/php.tar.gz" -C "$(pwd)/runtime/"
- fi
- if [ ! -f "$(pwd)/runtime/composer" ]; then
- download_file "https://mirrors.aliyun.com/composer/composer.phar" "$(pwd)/runtime/composer.phar"
- if [ $? -ne 0 ]; then
- exit 1
- fi
- echo '$(dirname $0)/php $(dirname $0)/composer.phar $@' > $(pwd)/runtime/composer
- chmod +x $(pwd)/runtime/composer
- test_composer_and_php
- fi
- if [ $? -ne 0 ]; then
- exit 1
- fi
- echo "成功下载!" && \
- echo -e "PHP使用:\truntime/php -v" && \
- echo -e "Composer使用:\truntime/composer"
|