这里只体现了php可以通过批处理文件调用python脚本的效果

控制器代码

访问路径为127.0.0.1/index/index/upload.

index模块,index控制器,upload方法。

<?php
namespace app\index\controller;
use think\Request;
class Index extends \think\Controller
{// 文件上传表单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;width: 240px;height: 24px;line-height: 28px;border: 1px solid #D4D4D4;} .form .btn{margin:6px;padding: 6px;width: 120px;font-size: 16px;border: 1px solid #D4D4D4;cursor: pointer;background:#eee;} .form .file{margin:6px;padding: 6px;width: 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:\xampp\htdocs\server\public

意即cmd的初始路径在该路径下。

批处理内容:

名称为1.bat

python "./prj - 2 - Beta/main.py"

python脚本路径内容:

路径:C:\xampp\htdocs\server\public\prj - 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_())

转载于:https://www.cnblogs.com/bai2018/p/11316783.html

Thinkphp5.0上传图片与运行python脚本相关推荐

  1. 命令行运行Python脚本时传入参数的三种方式

    三种常用的方式 如果在运行python脚本时需要传入一些参数,例如gpus与batch_size,可以使用如下三种方式. python script.py 0,1,2 10 python script ...

  2. power python_在 Power BI Desktop 中运行 Python 脚本

    在 Power BI Desktop 中运行 Python 脚本Run Python scripts in Power BI Desktop 06/02/2020 本文内容 你可以直接在 Power ...

  3. flask执行python脚本_如何在Flask中运行python脚本

    我有一个Flask脚本,可以创建网站并动态打印一些数据.-打印的数据应来自另一个python脚本. 我目前面临的问题是,如果我将执行python脚本的行放在执行Flask应用程序的行之前,它将运行Py ...

  4. python解释器的提示符是shell嘛_从PowerShell语法错误运行Python脚本

    您的第一个>>> import os >>> os.system('.\\CleanupStops.py')语句以交互模式启动了Python解释器.如果你想从那里运 ...

  5. 安卓手机运行python程序的软件-安卓手机定时运行python脚本

    话说现在智能手机的计算能力严重过剩啊,不玩游戏.不打电话.不刷微信时,要充分利用手机的计算潜力为我所用.完全可以把一些台式电脑上的计算任务移到手机上来运行.python就是一个很好的跨平台的解决方案. ...

  6. 【python教程入门学习】通过运行python脚本来更改Windows背景

    通过运行python脚本来更改Windows背景 在我们开始之前,一定要注意这篇文章只针对Windows用户!对于那些使用Windows的人来说,这是一个有趣的想法. 如果您想使用python更改桌面 ...

  7. 树莓派能直接运行python程序_在树莓派上运行python脚本 - python

    我正在研究rapiberry pi 3大约3个月,开始使用它时遇到了问题. 我找不到在树莓派打开时在其上运行python脚本的有效,安全的方法(没有监视器,鼠标和键盘).此刻,我在/ etc / pr ...

  8. python刷步数程序设计_乐心健康间接修改微信步数-Docker持久运行python脚本

    使用的就是抓包然后修改数据进行解包,相关的使用方法可以从原博客查看,我这里是进一步补充将脚本持久化运行 想法是从csdn上面发现的一个博客开始的,能够修改微信步数. 缺点就是要一直运行才可以,那干脆扔 ...

  9. centos 自动运行python脚本,centos配置 Python 定时任务

    centos 实现自动运行 Python 脚本 正式配置前,先编写一段 Python 脚本,实现日志写入文件操作 import os import sys import loggingcurrent_ ...

最新文章

  1. 10个不为人知 但绝对值得收藏的网站
  2. 浮点转字符串性能比较
  3. 文献记录(part26)--Action recognition using kinematics posture feature on 3D skeleton joint locations
  4. hibernate多对多、正向工程创建数据表——访问温馨提示
  5. C++ 流的操作 | 初识IO类、文件流、string流的使用
  6. JAVA语言怎么搞_Java语言
  7. 你们觉得生一个孩子好,还是生两个孩子好?
  8. 浅谈.net事件机制
  9. 人工智能火爆,入门却太难了!
  10. verilog中的定点数、浮点数、定点小数、定点整数的表示及运算
  11. 深入解析字符串的比较方法:“==”操作符;String.Equals方法;String.Compare方法;String.CompareOrdinal方法。...
  12. Java基础知识汇总(持续更新)
  13. delphi代码在linux编译运行,[教程] Delphi 10.2 Linux 程序开发环境部署的基本步骤
  14. 乐优商城(15)--订单服务
  15. python通过串口发送bin文件
  16. initializationerror错误的解决
  17. 基于Pytorch实现自建数据库的深度神经网络模型案例
  18. Android科大讯飞语音按队列播报
  19. win10系统无法访问ftp服务器地址,win10系统访问不了ftp的解决教程
  20. CodeForces 603C/604E Lieges of Legendre SG函数

热门文章

  1. C#中深拷贝对象的简单方法
  2. 23种设计模式C++源码与UML实现--享元模式
  3. c语言一整行一整行读取文件
  4. 修改mysql的max_allowed_packet值
  5. 操作系统(一)操作系统的概念、功能
  6. STM32开发 -- DMA详解
  7. Leetcode 分类 题解 收集
  8. Android免Root环境下Hook框架Legend原理分析
  9. 深入理解Fabric环境搭建的详细过程
  10. Android View坐标系