| 
<?php
 declare(strict_types=1);
 
 /**************************************************************************************
 *
 * Catalyst PHP Framework
 * PHP Version 8.3 (Required).
 *
 * @package   Catalyst
 * @subpackage Public
 * @see       https://github.com/arcanisgk/catalyst
 *
 * @author    Walter Nuñez (arcanisgk/original founder) <[email protected]>
 * @copyright 2023 - 2025
 * @license   http://www.gnu.org/copyleft/lesser.html GNU Lesser General Public License
 *
 * @note      This program is distributed in the hope that it will be useful
 *            WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
 *            or FITNESS FOR A PARTICULAR PURPOSE.
 *
 * @category  Framework
 * @filesource
 *
 * @link      https://catalyst.dock Local development URL
 *
 */
 
 
 // Get the base directory of the project
 $baseDir = dirname(__FILE__, 2);
 
 // Build paths in a platform-independent way
 $phpIniPath = "C:/laragon/bin/php/php-8.3.3-nts-Win32-vs16-x64/php.ini";
 $indexPath = implode(DIRECTORY_SEPARATOR, [$baseDir, 'bootstrap', 'bin', 'index.php']);
 
 // Get PHP executable path
 $phpExecutable = PHP_BINARY;
 
 // Capture all command line arguments to forward them
 $arguments = '';
 if (isset($argv) && count($argv) > 1) {
 // Skip the first argument (script name)
 $args = array_slice($argv, 1);
 // Escape each argument and join them
 $escapedArgs = array_map('escapeshellarg', $args);
 $arguments = ' ' . implode(' ', $escapedArgs);
 }
 
 // Build the command
 $command = escapeshellcmd("$phpExecutable -c \"$phpIniPath\" \"$indexPath\"") . $arguments;
 
 // Output what we're doing
 echo "Executing: $command\n";
 
 // Execute the command and pass through all output
 passthru($command, $returnCode);
 
 // Return the same exit code from the subprocess
 exit($returnCode);
 
 
 |