首页 > 后端开发 > 正文

php后端api框架 求教php开发手机APP后台的问题

2023-09-09 12:51:21 | 我爱编程网

今天我爱编程网小编整理了php后端api框架 求教php开发手机APP后台的问题相关信息,希望在这方面能够更好帮助到大家。

php后端api框架 求教php开发手机APP后台的问题

求教php开发手机APP后台的问题

利用PHP框架做手机APP开发需要考虑两种可能:

第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的nginxphp-fpm传统的php框架是做不到的。如果是长连接即时通讯类的服务器框架推荐一看下workerman,它是就是一个php的socket服务器框架,非常适合做手机后台服务器框架。

第二:如果不需要即时通讯的话,可以考虑直接走http协议,用nginxphp-fpm搭建一个webserver就好了,php框架可以采用thinkphp、yii等等,客户端需要与服务器通讯的时候向服务端get/post一个请求就好。

如果是比较简单的手机APP,例如新闻客户端这样的不会涉及到长连接的服务,那么可以考虑直接使用http协议。因为该协议几乎被所有可以上网的设备支持,手机客户端那边也有大量相关的库可以调用,省掉不少麻烦,其实确定了这三个:协议(HTTP)、数据表示方法(JSON)、请求数据的方法(REST)之后,基本上就可以开发一个简单地服务端接口了(业务逻辑得自己琢磨),再加上手机客户端那边配套的设置搭起来,那么就可以了。

php后端api框架 求教php开发手机APP后台的问题

PHP后端接口怎么写



php后台接口的实现方法
1. 首先,要设置一个入口文件
入口文件的话会引入到固定的api文件(如下):
<?php
define("APPAPI_ALLOW_REQUEST_LOGIN", 'Y');
//是否允许传用户名密码参数的形式登录。如为Y则参数用户名密码参数和basic方式都可以,如为N就只能basic方式。
//define("SITE_TEMPLATE_PATH", '/local/templates/mobile_app_api');
//如不定义,默认是local/templates/bitrix24。可以考虑将/local/templates/mobile_app留给h5前端展示用。
新开/local/templates/mobile_app_api给api用。如不指定SITE_TEMPLATE_PATH直接IncludeComponent,则对组件代码进行debug时,
会出现web端头部页面。
//require_once($_SERVER['DOCUMENT_ROOT'] . '/bitrix/header.php'); //需要模板页面
Header('Access-Control-Allow-Origin: *');
Header('Access-Control-Allow-Headers: origin, content-type, accept');
Header('X-Content-Type-Options: nosniff');
require("remote_auth.php");
//app方式每次请求session_id()都会变,导致挂钩在session_id()下面的所有session信息如fix_session_id也都不认。
所以登录完毕后要拿到session_id(),并在后续接口一起传给接口,接口再去指定session_id。
//$_REQUEST['org_sessid']='06q75330o31se1cf4d7vl1bdm4';
if(!empty($_REQUEST['org_sessid'])){
$org_session_id=$_REQUEST['org_sessid'];
session_id($org_session_id);
session_start();
//echo session_id();
//echo "<pre>";print_r($_SESSION);exit;
}
require_once($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/prolog_before.php"); //无需模板页面
$APPLICATION->IncludeComponent("vdg:mobile.data", "", Array());
exit;
?>2. 其次,在引入的组件的component.php中获取参数,确定模板的使用

<?php
...
include_once(dirname(__FILE__) . "/functions.php");//引入类的方法的文件
...
if ($_REQUEST["mobile_action"])//Executing some action
{
$APPLICATION->RestartBuffer();
$action = $_REQUEST["mobile_action"];
//CRestUtil::sendHeaders(); //跨域header
$actionList = new Bitrix\Mobile\Action();
$actionList->executeAction($action, $arParams);
CMain::FinalActions();
die();
}
elseif ($_REQUEST["captcha_sid"])//getting captcha image 通过 /vdg/app_api.php?captcha_sid=1 可以得到图形验证码。
{
$APPLICATION->RestartBuffer();
$actionList = new Bitrix\Mobile\Action();
$actionList->executeAction("get_captcha", $arParams);
die();
}
elseif ($_REQUEST["manifest_id"])//getting content of appcache manifest
{
include($_SERVER["DOCUMENT_ROOT"] .\Bitrix\Main\Data\AppCacheManifest::MANIFEST_CHECK_FILE);
die();
}
elseif(!$USER->IsAuthorized() || !$isSessidValid)
{
$APPLICATION->RestartBuffer();
header("HTTP/1.0 401 Not Authorized");
if(Bitrix\MobileApp\Mobile::getInstance()->getInstance() != "android")
{
//header("Content-Type: application/x-javascript");
header("Content-Type: application/json");
header("BX-Authorize: ".bitrix_sessid());
}
jsonError('201', '请先登陆');
//echo json_encode(Array("status" => "failed", "bitrix_sessid"=>bitrix_sessid()));
die();
}
?>3.在具体的模板中运用类的方法根据参数获取相应的数据,并返回客户端结果
如果成果返回“ jsonSuccess(questions);”如果失败返回“jsonError(′201′,questions);”
如果失败返回“jsonError(′201′,questRes[“ERROR”]);”或其他错误讯息。
推荐教程:PHP视频教程

php后端api框架 求教php开发手机APP后台的问题

web后端开发框架有哪些

web后端开发框架有以下回答:

1、Symfony

symfony是一个非常稳定的PHP框架,适合大型或复杂的企业级项目。Symfony由一组PHP组件、一个应用程序框架、一个社区和一种哲学组成,所有这些组件协同工作,帮助实现web上的一个共同目标。

这些原因使得Symfony成为web开发的高级框架。它能够帮助全栈开发人员创建可伸缩的网站,以灵活地更改业务需求。并且,它能够使用一些最大的开源平台,如PHPBB、Piwik和Drupal。

2、Laravel

Laravel是一个免费的开源PHPweb框架,旨在按照模型-视图-控制器(MVC)架构模式构建最先进的web应用程序。它的特点是具有专用依赖管理器的模块化打包系统、有助于应用程序部署和维护的实用工具、访问关系数据库的许多方法,以及它面向语法的方向。

3、Yii

Yii也是PHP中非常优秀的开源web开发框架,它适合为需要执行重复任务的系统开发应用程序。它有内置的基于组件的模型、数据库抽象层、事件驱动的编程特性和模块化应用程序体系结构。

Yii编码器遵循快速应用开发(RAD),能够在短时间内启动和运行web应用程序,并且还可以方便地根据不断变化的业务需求定制应用程序。

4、CakePHP 我爱编程网

cakephpCakePHP是一个用PHP编写的开源web开发框架,它基于模型-控制器-视图和关联数据映射的概念。通过使用CakePHP,processionals可以以结构化且快速的方式开发web应用程序。

使用CakePHP的最大优势之一是它提供了详细的文档和实用指南,以及非常容易编写代码的框架,开发人员可以使用这个框架轻松地创建web应用程序。

5、ThinkPHP

ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,它使用面向对象的开发结构和MVC模式,融合了Struts的思想和TagLib(标签库)、RoR的ORM映射和ActiveRecord模式。

它还支持windows/Unix/Linux等服务器环境,支持MySql、PgSQL、Sqlite多种数据库以及PDO扩展,ThinkPHP框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

以上,就是我爱编程网小编给大家带来的php后端api框架 求教php开发手机APP后台的问题全部内容,希望对大家有所帮助!
与“php后端api框架 求教php开发手机APP后台的问题”相关推荐
php框架app 求教php开发手机APP后台的问题
php框架app 求教php开发手机APP后台的问题

求教php开发手机APP后台的问题利用PHP框架做手机APP开发需要考虑两种可能:第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的ngi

2023-09-01 02:56:29
简单php后台框架 求教php开发手机APP后台的问题
简单php后台框架 求教php开发手机APP后台的问题

php中常用的开源后台管理系统有哪些?只能回答基于PHPLaravel框架的开源后台管理系统,基于其他框架的后台管理系统没有研究过:Laravel-adminf-adminVoyagerLaraAdminQuickAdminoctobercmslavalitelaravel-boilerplatepyrocms求教php开发手机

2023-09-13 00:53:10
php设计后台框架 求教php开发手机APP后台的问题
php设计后台框架 求教php开发手机APP后台的问题

求教php开发手机APP后台的问题利用PHP框架做手机APP开发需要考虑两种可能:第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的ngi

2023-09-13 20:25:41
app的php框架 求教php开发手机APP后台的问题
app的php框架 求教php开发手机APP后台的问题

php用什么框架开发appPHP开发app常用的三种框架介绍1、ThinkPHP框架TP框架是一款快速兼容简单的轻量级国产PHP开发框架,使用面向对象的结构和MVC模式进行开发。它可以支持Windows、Linux等服务器,并且支持MySql、Sqlite等多种数据库和PDO扩展。其自身包含底层架构、兼容处理、基类库、数据库访问层、模版引擎、缓存机制、插件机制、角色认证、表单

2023-08-26 06:10:52
php怎么设置后台框架 求教php开发手机APP后台的问题
php怎么设置后台框架 求教php开发手机APP后台的问题

PHP如何用IFRAME制作网站后台基本框架如下:&lt;framesetframeborder="1"rows="70,*"&gt;&lt;framename="topframe"src="header.php"/&gt;//加载头部文件&lt;framesetframeborder="1"cols="180,*"&gt;&lt;framename="leftframe"s

2023-09-17 19:24:27
php框架移动端 求教php开发手机APP后台的问题
php框架移动端 求教php开发手机APP后台的问题

求教php开发手机APP后台的问题利用PHP框架做手机APP开发需要考虑两种可能:第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的ngi

2023-09-08 18:11:44
php后端框架有哪些类型 求教php开发手机APP后台的问题
php后端框架有哪些类型 求教php开发手机APP后台的问题

求教php开发手机APP后台的问题利用PHP框架做手机APP开发需要考虑两种可能:第一:如果需要即时通讯,也就是需要手机客户端与服务端保持TCP长连接,服务端需要向客户端推送数据的时候可以随时通过这个长连接发送数据给客户端,这样便能做到客户端与服务端及时通讯甚至客户端与客户端及时通讯。做到这需要PHP能维持很多客户端连接,并且需要多进程支持,支持自己的通讯协议。这样的应用传统的ngi

2023-09-27 02:43:56
php长连接框架 求教php开发手机APP后台的问题
php长连接框架 求教php开发手机APP后台的问题

php使用pdo连接数据库时,其中有个属性是长连接,请问设置了这个属性有啥好处与坏处如果操作这个数据的人不多,并你进行长连接的连接资源使用很频繁的话使用长连接。这样速度比较快。顾名思义,长连接就是一直连接从未断开。你应该清楚数据库连接有的是限定连接个数的。你一直连接就占用了一个连接资源。如果连接这个数据库的人不多的话,这样没问题,还能加快速度,你每次操作数据库的时候不用在进行连接操作。

2023-08-27 17:12:00