首页 后端开发 php教程 Android Elephpant-您的Android手机上的Laravel?

Android Elephpant-您的Android手机上的Laravel?

Feb 10, 2025 am 08:56 AM

在Android设备上使用Termux构建PHP开发环境:一个移动开发指南

The Android Elephpant - Laravel on your Android Phone?

核心要点

  • 利用强大的终端模拟器和Linux软件包集合Termux,可在Android设备上搭建PHP开发环境。
  • 在Android上运行Laravel需要安装PHP、Git和Composer等软件包,并使用简单的phpinfo()测试验证PHP安装。
  • Android设备的数据持久化可通过轻量级的无服务器文件型数据库引擎SQLite实现,非常适合存储少量数据。
  • 虽然Android设备无法运行复杂的测试套件或MySQL,但此设置对于小型开发任务或紧急修复非常有用,允许随时随地进行PHP开发而无需携带笔记本电脑。

不久前,Christopher Pitt撰写了一篇优秀的文章,介绍如何在iPad上编写和运行PHP代码。读完后,我心想:“在Android上做同样的事情也很酷”,例如,可以在旅途中随时编写和编辑代码,而无需随身携带笔记本电脑。因此,我决定进行一些研究,看看我能想出什么。

The Android Elephpant - Laravel on your Android Phone?

本教程适用于任何类型的Android设备。我在手机上完成了这项工作,但配备蓝牙键盘的Android平板电脑可能是理想的设置。

Android上有一些不同的shell应用程序。本教程将使用名为Termux的应用程序。

The Android Elephpant - Laravel on your Android Phone?

Termux结合了强大的终端仿真和广泛的Linux软件包集合。它也是完全免费且易于使用的。

从Play商店安装Termux后,首先要运行apt update命令。根据文档:“此命令需要在安装后立即运行,之后定期运行以接收更新。”

现在是令人兴奋的部分。我想讨论的最初两个命令是apt listapt list --installed命令。第一个命令将列出Termux可用的所有软件包。我们可以看到它支持许多不同的编程语言、文本编辑器,并具有一些有用的实用程序包,例如zip、tar等等。第二个命令将列出所有已安装的软件包。我们可以看到Termux已经预安装了一些软件包,例如apt和bash。

我在测试Termux时的目标是查看我是否可以组装一个合适的*PHP开发环境,所以我首先安装了一个文本编辑器。我更喜欢Vim,但还有一些其他选项可用,例如Emacs和Nano。Vim的学习曲线有点陡峭,但是一旦你掌握了它的基础知识,就会变得非常舒适。你可以使用apt install vim命令获得Vim。

如果你想了解更多关于vim的信息,这里有一篇非常好的文章,或者,安装后,键入vimtutor以使用内置教程。

如果你在Android手机上测试这个,运行vim会带来第一组问题。我该如何按下Escape键?Termux有一个大型快捷键列表,可用于模拟Android键盘上不可用的按钮:

命令
Volume Up E Escape键
Volume Up T Tab键
Volume Up 1 F1 (Volume Up 2 → F2,以此类推)
Volume Up 0 F10
Volume Up B Alt B (使用readline时向后一个单词)
Volume Up F Alt F (使用readline时向前一个单词)
Volume Up X Alt X
Volume Up W 上箭头键
Volume Up A 左箭头键
Volume Up S 下箭头键
Volume Up D 右箭头键
Volume Up L | (管道字符)
Volume Up U _ (下划线)
Volume Up P Page Up
Volume Up N Page Down
Volume Up . Ctrl (SIGQUIT)
Volume Up V 显示音量控制

现在我们的编辑器已经启动并运行,是时候安装我们需要的软件包了:PHP、Git和Composer。

apt install php
apt install git
登录后复制
登录后复制

这将安装最新的PHP和Git软件包。

The Android Elephpant - Laravel on your Android Phone?

对于Composer,我们需要做一些额外的工作。我们需要转到Composer下载页面并使用命令行安装说明:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
登录后复制
登录后复制

这将下载安装程序、验证它、运行它并删除它。如果一切顺利,我们应该能够从Termux运行Composer。

The Android Elephpant - Laravel on your Android Phone?

现在我们已经安装了所有工具,我们应该测试我们的PHP安装是否正确运行。为此,让我们进行一个简单的phpinfo()测试。让我们创建一个新文件夹并测试我们的PHP安装。

mkdir test
cd test
echo "<?php phpinfo();" ?> > index.php
php -S localhost:8080
登录后复制
登录后复制

这将创建一个新文件夹,然后在其中创建一个包含phpinfo()命令的index.php文件。我直接将其回显到文件中,但你可以使用Vim来完成它。最后,我们使用PHP服务器将其提供给我们的localhost。当在浏览器中访问localhost:8080时,我们应该看到类似这样的内容:

The Android Elephpant - Laravel on your Android Phone?

我们现在拥有用于依赖项管理的Composer和用于版本控制的git。但是我知道你在想什么:“我们刚刚进行了一个简单的phpinfo测试,其余的呢?”

我们可以在Android设备上安装Laravel吗?

此时,我们拥有在Android设备上安装和运行Laravel所需的一切。要创建一个新的Laravel项目,我们需要运行以下命令:

php composer.phar create-project --prefer-dist laravel/laravel new_project
登录后复制
登录后复制

这将在new_project文件夹中创建一个新的Laravel项目。--prefer-dist选项在此处有很好的文档说明。安装可能需要一段时间。完成后,我们可以使用Laravel自己的Artisan命令行界面运行我们新创建的项目。在new_project文件夹内,我们可以运行以下命令:

php artisan serve
登录后复制
登录后复制

在浏览器中访问localhost:8000 URL应该现在显示Laravel的首页。

The Android Elephpant - Laravel on your Android Phone?

成功!我们的Laravel安装已完成。我们已成功安装了编写和执行代码所需的工具。但是,如果没有持久化数据的方法,任何开发环境都不完整。

对于Android设备,大多数情况下,内存和存储容量都是实际问题。因此,Termux仅提供SQLite作为持久化数据的方法。SQLite是一个无服务器的文件型数据库引擎。它很轻量级,非常适合少量数据,正如你在这里和这篇超越基础知识的文章中所读到的那样。首先,我们需要安装它。

apt install php
apt install git
登录后复制
登录后复制

接下来,我们需要配置我们的Laravel项目以使用SQLite。在项目的根目录中,我们有一个.env文件。这是环境配置文件,是我们需要编辑的第一个文件。使用你选择的编辑器来编辑以下几行:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '55d6ead61b29c7bdee5cccfb50076874187bd9f21f65d8991d46ec5cc90518f447387fb9f76ebae1fbbacf329e583e30') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
登录后复制
登录后复制

然后转到config/database.php文件并将以下行从:

mkdir test
cd test
echo "<?php phpinfo();" ?> > index.php
php -S localhost:8080
登录后复制
登录后复制

更改为:

php composer.phar create-project --prefer-dist laravel/laravel new_project
登录后复制
登录后复制

这将使SQLite成为connections数组中的默认连接。 确保database.sqlite文件路径正确指向你的数据库文件。

database.sqlite文件尚不存在,因此我们需要创建它:

php artisan serve
登录后复制
登录后复制

这是我们需要告诉Laravel使用SQLite的所有配置——我们现在可以测试它了。我们将使用Laravel预构建的身份验证系统。要创建脚手架,我们需要运行以下命令:

apt install sqlite
登录后复制

之后,我们将运行迁移以构建我们的数据库模式。这将创建userspassword_reset表。

<code>DB_CONNECTION=sqlite
DB_DATABASE=homestead  # 或者更改为你的数据库名称</code>
登录后复制

如果我们再次运行php artisan serve,我们将看到现在可以选择注册和登录。我们的身份验证CRUD已成功创建!

The Android Elephpant - Laravel on your Android Phone?

结论

我在我的Android手机上完成了所有这些操作。此设置非常适合小型开发任务,因为它拥有开始在较小设备上进行开发所需的所有工具,无需随身携带笔记本电脑。

虽然它并非生产力的巅峰之作,但在需要紧急修复或想要查看可以从Android设备中榨取多少PHP性能时,它很容易派上用场。

尝试一下并告诉我们你的想法,如果你在Android上用PHP构建了一些有趣的东西,请向我们推销你的概念,我们将撰写关于它的文章!


*“合适”指针对上下文的合适。Android手机不会运行MySQL,也无法运行复杂的测试套件,尤其是端到端测试,但其他一些东西可能运行得足够好,可以完成一些工作。

(FAQs部分略去,因为与伪原创目标不符,且篇幅过长。)

以上是Android Elephpant-您的Android手机上的Laravel?的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

在PHP API中说明JSON Web令牌(JWT)及其用例。 在PHP API中说明JSON Web令牌(JWT)及其用例。 Apr 05, 2025 am 12:04 AM

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

会话如何劫持工作,如何在PHP中减轻它? 会话如何劫持工作,如何在PHP中减轻它? Apr 06, 2025 am 12:02 AM

会话劫持可以通过以下步骤实现:1.获取会话ID,2.使用会话ID,3.保持会话活跃。在PHP中防范会话劫持的方法包括:1.使用session_regenerate_id()函数重新生成会话ID,2.通过数据库存储会话数据,3.确保所有会话数据通过HTTPS传输。

PHP 8.1中的枚举(枚举)是什么? PHP 8.1中的枚举(枚举)是什么? Apr 03, 2025 am 12:05 AM

PHP8.1中的枚举功能通过定义命名常量增强了代码的清晰度和类型安全性。1)枚举可以是整数、字符串或对象,提高了代码可读性和类型安全性。2)枚举基于类,支持面向对象特性,如遍历和反射。3)枚举可用于比较和赋值,确保类型安全。4)枚举支持添加方法,实现复杂逻辑。5)严格类型检查和错误处理可避免常见错误。6)枚举减少魔法值,提升可维护性,但需注意性能优化。

描述扎实的原则及其如何应用于PHP的开发。 描述扎实的原则及其如何应用于PHP的开发。 Apr 03, 2025 am 12:04 AM

SOLID原则在PHP开发中的应用包括:1.单一职责原则(SRP):每个类只负责一个功能。2.开闭原则(OCP):通过扩展而非修改实现变化。3.里氏替换原则(LSP):子类可替换基类而不影响程序正确性。4.接口隔离原则(ISP):使用细粒度接口避免依赖不使用的方法。5.依赖倒置原则(DIP):高低层次模块都依赖于抽象,通过依赖注入实现。

在PHPStorm中如何进行CLI模式的调试? 在PHPStorm中如何进行CLI模式的调试? Apr 01, 2025 pm 02:57 PM

在PHPStorm中如何进行CLI模式的调试?在使用PHPStorm进行开发时,有时我们需要在命令行界面(CLI)模式下调试PHP�...

如何用PHP的cURL库发送包含JSON数据的POST请求? 如何用PHP的cURL库发送包含JSON数据的POST请求? Apr 01, 2025 pm 03:12 PM

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

如何在系统重启后自动设置unixsocket的权限? 如何在系统重启后自动设置unixsocket的权限? Mar 31, 2025 pm 11:54 PM

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...

See all articles