0

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

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

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

所以基本上它是这样的:

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

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

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

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

4

1 回答 1

0

与其将查询存储在数组中,不如在服务器上使用某种 RESTful API。然后,您将 GET 请求发送到您的服务器,服务器执行它们并返回所需的数据。然后可以读取和解码。(您也可以向服务器发送和更新数据)。

有一堆用于 PHP 的 REST 框架,但我使用“Slim 框架”,因为它非常容易理解(即使对于不熟悉 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。(谷歌它,在他们的页面上找到“HTTP请求操作管理器”并查看GET)

于 2013-10-22T08:50:54.483 回答