我正在localhost中加载项目,我的管理员要求我将laravel 5.6与mysql转换为.exe。
我是新来的,不知道。任何专家都可以指导我。...
谢谢。
答案 0 :(得分:2)
如果管理员要求您将Laravel项目转换为PHP,也许您应该要求管理员辞职。
Laravel是基于PHP语言构建的框架。虽然有工具可以将PHP脚本转换为独立的.exe文件:
https://www.exeoutput.com/ https://www.exeoutput.com/php-exe
我非常怀疑它是否适用于Laravel这样的框架。
PHP + Laravel + MySQL
是要在支持PHP的环境中运行。您需要做的是在PHP, MySQL, Composer and Laravel
上安装Windows
,然后从该环境中运行Web应用程序。
由于您的“管理员”而不是“项目经理”要求您制作一个独立的.exe,这使我认为他也许想在一系列不同的PC,Web服务器或其他计算机上部署,测试和调整您的应用程序。他认为使用单个可部署.exe而不是必须安装PHP,MySQL,Composer,Laravel,填充数据库以及配置Web和DB服务器,这在他每次部署和测试您的应用程序时都会很方便。
如果是这种情况,您最好的选择是创建一个或多个docker containers。并将其交给您的管理员。
https://www.docker.com https://www.docker.com/what-container
再次让我感到惊讶的是,管理员没有首先要求您进行dockerize,而是要求您从基于PHP框架和嵌入式MySQL数据库的Web应用程序中制作Windows可执行文件。
另请参阅:
https://laracasts.com/discuss/channels/general-discussion/laravel-mysql-wamp-server-project-to-exe
laravel executable application
编辑:我刚刚意识到,如果您要花时间遵循this question about convert php scripts to exe中的方法之一将应用程序转换为exe,则可能至少可以通过转换文件来绕过Laravel依赖关系在Laravel storage directory中而不是您的源代码中,它包含纯PHP而不是刀片模板,这些模板绝对不会被任何PHP转换为exe工具。
即:刀片文件可能包含@foreach
,而存储目录将包含已转译的纯PHP代码,该代码将@foreach
替换为
<?php $__currentLoopData = $getusergroups; $__env->addLoop($__currentLoopData); foreach($__currentLoopData as $getusergroupss): $__env->incrementLoopIndices(); $loop = $__env->getLastLoop(); ?>
<option value="<?php echo e($getusergroupss->id); ?>"><?php echo e($getusergroupss->title); ?></option>
<?php endforeach; $__env->popLoop(); $loop = $__env->getLastLoop(); ?>
不过还是远。
答案 1 :(得分:0)
如果要在桌面模式下测试laravel项目 您可以尝试使用此https://github.com/cztomczak/phpdesktop
它使用sqlite。因此,您需要将数据库(例如,mysql)更改为sqlite 您可以将项目复制并粘贴到“ www”文件夹中,然后尝试...
它对我有用... 至少您可以与此显示管理员 你可以在这里查看更多... https://bitbucket.org/chromiumembedded/cef/overview