ZQDcsOpcService.php 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace Modules\OpcData\Services\zaoquan;
  3. use GuzzleHttp\Client;
  4. class ZQDcsOpcService
  5. {
  6. public $python_path = [
  7. 'keyword' => '/usr/bin/python311',
  8. 'curr'=>[
  9. 'path' => '/home/python_proj/python_custom_script/zaoquan/dcs/',
  10. 'fname' => 'test1.py',
  11. ],
  12. 'zq' =>[
  13. 'name' => 'zaoquan',
  14. 'path' => '/home/python_proj/python_custom_script/zaoquan/dcs/',
  15. 'fname' => 'test1.py',
  16. ]
  17. ];
  18. public function getDcsOpcData($pointArr, $sys_name='curr') {
  19. if(!is_array($pointArr)) null;
  20. $sysInfo = $this->python_path[$sys_name];
  21. $pids = $pointArr;
  22. $pyPath = $sysInfo['path'];
  23. $pyFName = $sysInfo['fname'];
  24. $pyKeyWord = $this->python_path['keyword'];
  25. $pidsJson = json_encode($pids);
  26. $command = "$pyKeyWord {$pyPath}{$pyFName}". ' ' . escapeshellarg("{$pidsJson}");
  27. // 调用Python脚本
  28. $output = shell_exec($command);
  29. return $output;
  30. }
  31. }