Download the PHP package crazywhalecc/static-php-cli without Composer

On this page you can find all versions of the php package crazywhalecc/static-php-cli. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package static-php-cli

static-php-cli

Releases CI License

static-php-cli is a powerful tool designed for building static, standalone PHP runtime with popular extensions.

Features

Single-file standalone php-cli:

out1

Combine PHP code with PHP interpreter using phpmicro:

out2

Quickstart

1. Download spc binary

For macOS and Linux, add execute permission first:

2. Build Static PHP

First, create a craft.yml file and specify which extensions you want to include from extension list or command generator:

Run command:

3. Static PHP usage

Now you can copy binaries built by static-php-cli to another machine and run with no dependencies:

Documentation

The current README contains basic usage. For all the features of static-php-cli, see https://static-php.dev .

Direct Download

If you don't want to build or want to test first, you can download example pre-compiled artifact from Actions, or from self-hosted server.

Below are several precompiled static-php binaries with different extension combinations, which can be downloaded directly according to your needs.

Combination Extension Count OS Comment
common 30+ Linux, macOS The binary size is about 7.5MB
bulk 50+ Linux, macOS The binary size is about 25MB
gnu-bulk 50+ Linux, macOS Using shared glibc
minimal 5 Linux, macOS The binary size is about 3MB
spc-min 5 Windows The binary size is about 3MB
spc-max 40+ Windows The binary size is about 8.5MB

Linux and Windows supports UPX compression for binaries, which can reduce the size of the binary by 30% to 50%. macOS does not support UPX compression, so the size of the pre-built binaries for mac is larger.

Build Online (using GitHub Actions)

When the above direct download binaries cannot meet your needs, you can use GitHub Action to easily build a statically compiled PHP, and at the same time define the extensions to be compiled by yourself.

  1. Fork me.
  2. Go to the Actions of the project and select CI.
  3. Select Run workflow, fill in the PHP version you want to compile, the target type, and the list of extensions. (extensions comma separated, e.g. bcmath,curl,mbstring)
  4. After waiting for about a period of time, enter the corresponding task and get Artifacts.

If you enable debug, all logs will be output at build time, including compiled logs, for troubleshooting.

Contribution

If the extension you need is missing, you can create an issue. If you are familiar with this project, you are also welcome to initiate a pull request.

If you want to contribute documentation, please just edit in docs/.

Now there is a static-php organization, which is used to store the repo related to the project.

Sponsor this project

You can sponsor me or my project from GitHub Sponsor. A portion of your donation will be used to maintain the static-php.dev server.

Special thanks to sponsors below:

Open-Source License

This project itself is based on MIT License, some newly added extensions and dependencies may originate from the the other projects, and the headers of these code files will also be given additional instructions LICENSE and AUTHOR.

These are similar projects:

The project uses some code from dixyes/lwmbs, such as windows static build target and libiconv support. lwmbs is licensed under the Mulan PSL 2.

Due to the special nature of this project, many other open source projects such as curl and protobuf will be used during the project compilation process, and they all have their own open source licenses.

Please use the bin/spc dump-license command to export the open source licenses used in the project after compilation, and comply with the corresponding project's LICENSE.


All versions of static-php-cli with dependencies

PHP Build Version
Package Version
Requires php Version >= 8.3
ext-mbstring Version *
ext-zlib Version *
laravel/prompts Version ^0.1.12
symfony/console Version ^5.4 || ^6 || ^7
symfony/process Version ^7.2
symfony/yaml Version ^7.2
zhamao/logger Version ^1.1.3
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package crazywhalecc/static-php-cli contains the following files

Loading the files please wait ....