我想开发一个与远程数据库同步的iPhone原生应用程序.是否可以使用PhoneGap开发此应用程序.如果我使用PhoneGap,如何从外部数据库获取数据?我可以在PhoneGap上使用PHP吗?
wm_*_*die 24
PhoneGap允许您在iPhone上运行JavaScript和HTML应用程序.您的所有PHP代码都必须驻留在远程服务器中.
要从服务器获取数据,您必须使用XMLHttpRequest对象或更友好的东西,如jquery $.get()或$.post()函数.
小智 22
我刚刚使用Ajax编译了一个带有PHP的PhoneGap应用程序来获取内容.
首先,在index.html头部加载jQuery库.在函数onBodyLoad()中,对PHP文件进行Ajax调用:
$('#content').load('http://www.example.com/test.php');
Run Code Online (Sandbox Code Playgroud)
在HTML会话中,将div id ="content"放在要显示内容的位置.
PHP:
for($i=1; $i<=10; $i++) {
echo '<p>I\'m a PHP Loop! Value: ' . $i . ' of 10.</p>';
}
Run Code Online (Sandbox Code Playgroud)
HTML将打印:
<p>I'm a PHP Loop! Value: 1 of 10.</p>
<p>I'm a PHP Loop! Value: 2 of 10.</p>
<p>I'm a PHP Loop! Value: 3 of 10.</p>
<p>I'm a PHP Loop! Value: 4 of 10.</p>
<p>I'm a PHP Loop! Value: 5 of 10.</p>
<p>I'm a PHP Loop! Value: 6 of 10.</p>
<p>I'm a PHP Loop! Value: 7 of 10.</p>
<p>I'm a PHP Loop! Value: 8 of 10.</p>
<p>I'm a PHP Loop! Value: 9 of 10.</p>
<p>I'm a PHP Loop! Value: 10 of 10.</p>
Run Code Online (Sandbox Code Playgroud)
你也可以用
$.get('test.php?name', function(data) {
$('#content').html(data);
});
Run Code Online (Sandbox Code Playgroud)
你的test.php可能有类似的东西:
if (isset($_GET['name'])) {
echo "Asked for name!";
}
Run Code Online (Sandbox Code Playgroud)
有了这个,你可以继续做一些好东西.我对这个问题有一个疑问:我可以托管外部PHP文件并在app store上部署应用程序吗?那有什么限制吗?
wm_eddie是对的.
此外,我想评论你的"我想建立一个本机iPhone应用程序"的报价.为PhoneGap编写的应用程序不是本机应用程序.虽然他们可向看,在大多数情况下,行为像本地应用程序,一个更好的比喻是把它们作为预包装,本地安装,Web应用程序能够使用的PhoneGap的API,让有限的访问本机功能的子集.值得注意的是,此功能包括传感器(加速度计,gps等)和相机操作等.
这可能与您的使用无关,但只是想澄清一点......;)
(PhoneGap仍然是一个非常好的工具,我在我的一些项目中使用它.但是,如果你需要一个完全原生的应用程序,除了必须在运行时解释的JS,但是主要使用预编译1-1语言依赖的象征意义,然后我推荐我正在利用的Titanium.两种不错的工具,但它们提供截然不同的产品,具有不同的利弊.这是确定最终产品的要求和然后选择最有意义的平台.)
| 归档时间: |
|
| 查看次数: |
32417 次 |
| 最近记录: |