这里只体现了php可以通过批处理文件调用python脚本的效果
控制器代码
访问路径为127.0.0.1/index/index/upload.
index模块,index控制器,upload方法。
<?php namespace appindexcontroller; use thinkRequest; class Index extends hinkController { // 文件上传表单 public function upload() { return $this->fetch(); } // 文件上传提交 public function up(Request $request) { // 获取表单上传文件 $file = $request->file('file'); if (empty($file)) { $this->error('请选择上传文件'); } // 移动到框架应用根目录/public/uploads/ 目录下 $info = $file->move(ROOT_PATH . 'public' . DS . 'uploads'); if ($info) { system('1.bat', $retval); $this->success('文件上传成功:' . $info->getRealPath()); } else { // 上传失败获取错误信息 $this->error($file->getError()); } } }
上传界面
展开代码复制粘贴
位置:application/index/view/upload/index.html
<!doctype html> <html> <head> <meta charset="UTF-8"> <title>文件上传示例</title> <style> body { font-family:"Microsoft Yahei","Helvetica Neue",Helvetica,Arial,sans-serif; font-size:16px; padding:5px; } . form{ padding: 15px; font-size: 16px; } .form .text { padding: 3px; margin:2px 10px; 240px; height: 24px; line-height: 28px; border: 1px solid #D4D4D4; } . form . btn{ margin:6px; padding: 6px; 120px; font-size: 16px; border: 1px solid #D4D4D4; cursor: pointer; background:#eee; } . form . file{ margin:6px; padding: 6px; 220px; font-size: 16px; border: 1px solid #D4D4D4; cursor: pointer; background:#eee; } a{ color: #868686; cursor: pointer; } a:hover{ text-decoration: underline; } h2{ color: #4288ce; font-weight: 400; padding: 6px 0; margin: 6px 0 0; font-size: 28px; border-bottom: 1px solid #eee; } div{ margin:8px; } . info{ padding: 12px 0; border-bottom: 1px solid #eee; } .copyright{ margin-top: 24px; padding: 12px 0; border-top: 1px solid #eee; } </style> </head> <body> <h2>文件上传示例</h2> <FORM method="post" enctype="multipart/form-data" class="form" action="{:url('up')}"> 选择文件:<INPUT type="file" class="file" name="file"><br/> <INPUT type="submit" class="btn" value=" 提交 "> </FORM> <div class="copyright"> <a title="官方网站" href="http://www.thinkphp.cn">ThinkPHP</a> <span>V5</span> <span>{ 十年磨一剑-为API开发设计的高性能框架 }</span> </div> </body> </html>
批处理文件
说明批处理文件路径与python脚本大致路径:C:xampphtdocsserverpublic
意即cmd的初始路径在该路径下。
批处理内容:
名称为1.bat
python "./prj - 2 - Beta/main.py"
python脚本路径内容:
路径:C:xampphtdocsserverpublicprj - 2 - Beta
内容:
import myUI import sys from PyQt5.QtWidgets import QApplication, QMainWindow class MyWindow(QMainWindow, myUI.Ui_MainWindow): def __init__(self, parent=None): super(MyWindow, self).__init__(parent) self.setupUi(self) if __name__ == '__main__': app = QApplication(sys.argv) app.aboutToQuit.connect(app.deleteLater) myWin = MyWindow() myWin.show() sys.exit(app.exec_())