Files
crm.twinpol.com/modules/EcmInvoiceOuts/test.php
2025-09-02 23:04:35 +02:00

45 lines
1.4 KiB
PHP

<?php
$bins = [
'/var/www/venv/bin/python',
'/usr/bin/python3.11',
'/usr/bin/python3.10',
'/usr/bin/python3.9',
'/usr/local/bin/python3.11',
'/usr/local/bin/python3.10',
'/usr/local/bin/python3.9',
'/usr/bin/python3',
'python3',
];
foreach ($bins as $b) {
$out = []; $ret = 0;
exec("$b -V 2>&1", $out, $ret);
echo htmlspecialchars("$b -> ".($out ? implode(' ', $out) : "not found / not executable")." (ret=$ret)")."<br>";
}
//$python = '/usr/bin/python3';
//$script = '/var/www/html/modules/EcmInvoiceOuts/ai/analysisAI.py';
//$cmd = escapeshellcmd("$python $script");
//
//// odczyt
//$output = [];
//$returnVar = 0;
//exec($cmd . ' 2>&1', $output, $returnVar);
//$body = implode("\n", $output);
//
//// błąd Pythona
//if ($returnVar !== 0) {
// // pokaż błąd jako tekst
// while (ob_get_level()) { ob_end_clean(); }
// header_remove();
// header('Content-Type: text/plain; charset=utf-8');
// http_response_code(500);
// echo "Error running Python script:\n".$body;
// exit;
//}
//
//// --- WYMUSZENIE RENDEROWANIA HTML ---
//while (ob_get_level()) { ob_end_clean(); } // wyczyść wszystkie bufory
//header_remove(); // usuń nagłówki ustawione wcześniej przez framework
//header('Content-Type: text/html; charset=utf-8');
//echo $body;
//exit; // ZATRZYMAJ framework (np. SugarCRM), żeby nic już nie dopisywał