Direct Answer
VS17 means the build uses the Visual Studio 2022 runtime, x64 means 64-bit, and Thread Safe versus Non Thread Safe depends on how PHP is loaded. For a normal 64-bit Windows dev machine, CLI, Composer, IIS, or FastCGI, choose VS17 x64 Non Thread Safe.
What do the labels mean?
Built with the Visual Studio 2022 C/C++ runtime. Install the matching Microsoft Visual C++ Redistributable if needed.
The 64-bit build. Modern Windows development and server machines should normally use x64.
Use it when PHP is loaded directly into a multithreaded web server, such as Apache mod_php on Windows.
Use it for FastCGI, IIS, command-line scripts, Composer, local development, and PHP-CGI/PHP-FPM-like deployments.
Decision table
| Scenario | Choose | Why |
|---|---|---|
| Apache module/mod_php on Windows | Thread Safe | PHP is loaded inside a multithreaded web server. |
| IIS/FastCGI or PHP-CGI | Non Thread Safe | FastCGI runs isolated worker processes. |
| CLI, Composer, local scripts | Non Thread Safe | Command-line PHP runs as a separate process. |
| 64-bit Windows | x64 | Matches the OS architecture and common extension builds. |
Inspect your current build
php -v
php -i | findstr /i "Thread Architecture Compiler"
If the output contains NTS, it is Non Thread Safe. If it says Thread Safety enabled, it is a Thread Safe build. PHP extensions must match the PHP version, compiler family, architecture, and TS/NTS mode.
Where this fits in setup
For a normal development environment, start with PHP environment setup, download VS17 x64 Non Thread Safe for Windows manual installs, and add the extracted PHP directory to PATH.