如题,如果本地电脑已经配置了 php 的运行环境,就直接运行 php 程序,否则就自动下载相关的程序进行安装配置,请问用哪个语言要简单些呢?
1
ljsh0102 2017-12-20 16:01:34 +08:00
F#
|
2
wkan 2017-12-20 16:05:20 +08:00 via iPhone
建议直接打包和程序一起打包 php 运行环境
|
3
wkan 2017-12-20 16:05:47 +08:00 via iPhone
修正:建议直接和程序一起打包 php 运行环境
|
4
MrMike OP @wkan 不想跟程序一起打包,程序在配置好本地运行环境后,自动下载到本地电脑上。所以需要在下载程序之前就要检查下运行环境。
|
6
clino 2017-12-20 16:12:27 +08:00
建议用 go 试试,虽然我不会 go,但是编译出的工具没依赖,比 python 部署方便,开发效率又比 c++之类的高
|
7
mt7620 2017-12-20 16:20:43 +08:00
C#之类的应该在合适不过了
|
8
ysc3839 2017-12-20 16:22:36 +08:00
Windows 的话,我觉得 Powershell 会比较方便。Python 也可以的,用 PyInstaller 打包成 exe 也可以直接运行。
|
9
Ellison 2017-12-20 16:23:43 +08:00 1
批处理就行吧,一般 Windows 下配 PHP 环境,都会加上环境变量吧,直接批处理跑下 php -v,如果命令不存在 errorlevel 就是 9009
|
12
anyx 2017-12-20 16:30:03 +08:00
这么简单的需求,还是 windows,必然是批处理或 powershell 或 vbs 或 js
|
13
neoblackcap 2017-12-20 16:30:30 +08:00
windows 小程序请使用 C#
|
14
Hellert 2017-12-20 16:30:43 +08:00
使用直接编译成本地代码的,Go, Delphi, VC++都可以。
|
15
omph 2017-12-20 16:33:54 +08:00
powershell
|
16
MrMike OP |
17
araraloren 2017-12-20 16:42:57 +08:00
@MrMike
Use PowerShell or bat or other script check PHP environment. Use C# make a GUI wrapper of that script. |
18
MrMike OP @araraloren thanks for your reply.
|
19
acros 2017-12-20 16:45:47 +08:00
|
21
BBrother 2017-12-20 16:52:19 +08:00
只有我是装一个文件夹的 exe 然后顺着点吗?
|
23
acros 2017-12-20 16:53:26 +08:00 via iPhone
|
25
MrMike OP @ysc3839 所以,如何检查是否配置了 apache 这样的软件呢。用 linux find 这样的命令全盘搜索,可能消耗太大了,或者 ping 本地 localhost 然后再根据返回的数据进行是否支持 php,不晓得这样是否可行,效率如何了。
|
28
acgnsstech 2017-12-20 17:10:07 +08:00
我觉得楼主可以看看 http://mdoc.vip 思路有点像 也是需要安装个 php 环境 XAMPP
|
29
jason19659 2017-12-20 17:11:02 +08:00
批处理
|
30
Hellert 2017-12-20 17:11:27 +08:00
也可以考虑 InnoSetup 或 NSIS 这类安装程序制作工具,环境检查网络下载都可以做,上手比较快。
|
31
MrMike OP @acgnsstech 最终的程序是 php 的,但是跟 mdoc 不一样,就是不想让终端用户去配置环境,也不需要用户晓得是 php 需要什么样的运行环境。
|
32
yaowenz 2017-12-20 17:23:20 +08:00
C#
|
34
acgnsstech 2017-12-20 17:25:42 +08:00
|
35
hiboshi 2017-12-20 17:28:52 +08:00
有想过怎么检查 是否安装 php?
环境变量,如果没在环境变量中注册,但是 有 php 源码,是否算有 php ? |
36
ioven 2017-12-20 20:38:00 +08:00
autoit,以前很多安装程序使用
|
37
wwwwzf 2017-12-21 00:23:07 +08:00
C#
|
38
msg7086 2017-12-21 01:44:56 +08:00 1
但是 PHP 环境你是绕不过的。而且一不小心就会搞出事情来。
以前见到过个傻逼桌面安卓模拟器,用的 VirtualBox,然后我装上了它,它把我 VirtualBox 里的虚拟机清空了,塞上了自家的虚拟机镜像。 看着我就不高兴了,就把它卸载了。然后它很自觉地帮我把 VirtualBox 整个卸载了。 回到主题,如果用户已经安装并定制了一份 PHP,你是打算复制一份出来吗?还是直接原样跑用户的环境呢? 如果用户装的 PHP 版本和你想要的不一样怎么办呢? 如果用户不用 Apache 而用 IIS 你怎么办呢? 如果你自己要用到的扩展和用户自己用的扩展冲突了要怎么办呢? |
39
loading 2017-12-21 06:40:34 +08:00 via Android
批处理就能完成
|
41
ipwx 2017-12-21 08:49:11 +08:00
别用系统的 php,还是都用自己的更好。至少自己的 php 可以自己管理目录,自己管理环境。
|
42
UnknownR 2017-12-21 10:33:23 +08:00
用 powershell,看看$env 变量里有没有 php,没有就调 http-request 下载,执行外部程序安装,要界面的话就用 c#写
|
43
janxin 2017-12-21 10:37:06 +08:00
php 啊...
|
44
oott123 2017-12-21 10:39:10 +08:00
我觉得终端用户机器上装了 php 的肯定少,而且又要符合版本,搞不好还要部分扩展什么的,到时候用户不小心改了自己的环境你的软件跑不起来了又很麻烦……这又不是 vcredist 或者 .net fx 有完善的管理机制。
所以我建议:不如不管用户装没装自己都下一个。 至于用啥,我觉得 InnoSetup 之类的工具就行啊…… |
45
MrMike OP @UnknownR 这个好像不得行,我本地电脑装了 phpStudy ( PHP 环境集成包),在环境变量里面,没有设置 PHP,也是可以运行 PHP 的。
|
46
MrMike OP |
48
xsliang 2017-12-21 14:11:48 +08:00
照顾老机器又要有界面 选 framework2.0,用 winform 快速完成
|
49
msg7086 2017-12-21 17:25:30 +08:00
|
50
hoythan 2017-12-21 17:39:21 +08:00 1
Electron 用 js 写一个程序,支持 win mac linux 等设备
|
51
ZXCDFGTYU 2017-12-21 18:38:05 +08:00
```bash
CHECKPHP=$(curl http://127.0.0.1/info.php) if($CHECKPHP!=="hello"){ ./installer.sh } ``` ```php echo "hello"; ``` |
52
why1 2017-12-21 19:00:36 +08:00 via Android
那么懒,没客服吗
|
53
txlty 2017-12-21 19:15:22 +08:00
php 本身就可以写,找个可用的 php to exe,打包封装一下。https://www.v2ex.com/t/187672 官网没了找其他地方下
如果你会用 VS 编译 php 源码的话,也可以自己编译封装一个单文件 exe,包含了 php 解释引擎和需要运行的代码。C 语言方面,只要理解 zend_eval_string()这一个函数的作用就够了。 |
54
flyico 2017-12-22 09:55:40 +08:00
Windows 下 还要 GUI 除了 C#没有更好的了
|