php - 使用 PHP 下载 JSON 的移动应用程序

标签 php mysql objective-c json servlets

我有一个 iOS 和 Android 应用程序,它使用 JSON 和 PHP 从数据库下载数据。基本上它有很多 mysql 查询从我的 MySQL 数据库返回数据。当我开始这个项目时,只是在 php 中创建了一个数组,其中包含所有查询。然后我会在我的 url 中发送一个索引来访问该查询以及一些可选的变量。

http://url.nl/script.php?index=1&var1=foo&var2bar

这工作得很好,对于一个小项目来说还不错,但我知道这不是一个好的编程,也不是一个好的模型。

所以基本上是这样的:

  • 采用模型- View - Controller -存储模型的应用
  • 当应用需要数据时,Store 类通过 url 请求数据,并在该 url 中发送索引
  • PHP 脚本读取索引,执行数组中保存的查询,将数据编码为 JSON,返回数据
  • 应用的存储类读取和解码数据
  • 应用的 View 类以任何想要的方式呈现数据。

所以除了访问我的数据库、编码和返回数据之外,我并没有用 php 做太多事情。

由于我的应用程序变得非常大并且使用越来越多的查询,我想在我的新版本中做正确的事情。在这种情况下,PHP 使用什么模型比较好?

我不是 Web 开发人员,因此我试图将所有 PHP 进程保持在最低限度,但意识到这不是一种好的编程方式。

最佳答案

您应该在服务器上使用某种 RESTful API,而不是仅仅将查询存储在数组中。 然后,您将 GET 请求发送到您的服务器,服务器执行这些请求并返回所需的数据。然后可以读取和解码。 (您还可以向服务器发送和更新数据)。

有很多用于 PHP 的 REST Framworks,但我使用“Slim Framework”,因为它真的很容易理解(即使对于不熟悉 PHP 的人来说)。

此示例来自他们的网站:

$app = new \Slim\Slim();
$app->get('/hello/:name', function ($name) {
    echo "Hello, $name";
});
$app->run();

可以调用 www.yourside.com/hello/Mark,然后返回“Hello Mark”。有5行代码。太棒了。

您可以在那里编写任何 php 代码。要对 MySQL 数据库中的数据进行编码,只需遵循本教程:http://coenraets.org/blog/2011/12/restful-services-with-jquery-php-and-the-slim-framework/忽略 JQuery 部分即可。

然后在您的应用程序中,您可以从提供的 URL 请求数据。我为此使用 AFNetworking。 (Google 一下,在他们的页面上找到“HTTP 请求操作管理器”并查看 GET)

关于php - 使用 PHP 下载 JSON 的移动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19512577/

相关文章:

php - Zend_Form 自定义错误信息

javascript - 使用 AJAX 时显示警告

mysql - 如何将 "COMMENT"设置为 "TABLE"返回?

mysql - 按求和变量分组

php - 检测 WooCommerce 订单状态已更改

javascript - 如何通过php文件使用xmlhttp.open方法传递数组?

mysql - 创建自定义错误消息 MySQL

objective-c - Cocoa:拖放任何文件类型

ios - 在选项卡 Controller 中传入 UserId 时出错?

iphone - UITextView 不是自动换行