首页 > 后端开发 > 正文

php的ci框架后台api PHP开发用哪种框架

2023-09-27 19:59:48 | 我爱编程网

今天,我爱编程网小编为关注后端开发的同学们准备了php的ci框架后台api PHP开发用哪种框架,下面一起来看一下吧。

php的ci框架后台api PHP开发用哪种框架

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的ci框架后台api PHP开发用哪种框架

php如何实现api接口


php实现api接口的方法:首先安装好phpStudy并启动;然后将项目代码放在WWW目录下;接着创建数据库;最后编写接口,并通过路由进行网络请求即可。
推荐:《PHP视频教程》
用PHP编写简单的api(数据接口)
一、编写接口所需几样工具或软件(均是win7+64位):
1.phpStudy、SQLyog和编码工具(sublime text/webStorm/vs code均可,按自己习惯来);
2.安装好phpStudy之后,打开软件,点击启动;如果Apache和MySQL右边的显示都是绿色的,那么说明服务启动成功;另外注意一下开始的PHP服务版本,因为不同的版本对应不同node.js版本或SQLyog版本,如果开启不了,则自行百度解决,一般都是要下载对应支持的VC9(分32位和64位)或VC11(分32位和64位)。
3.特别要注意的是,项目代码一定要放在WWW目录下,也就是安装phpStudy的目录下。我的是phpStudy/WWW,新版phpStudy可能会不一样,多找找几个文件夹,找到WWW文件夹即可。
3.SQLyog:用于操作数据库。正版的需要破解(破解方法百度),打开之后就弹出以下窗口,有四个信息是比较重要的。
1)MySQL主机地址:填写 localhost即可
2)用户名和密码:默认都是root
3)端口:默认3306
4)点击“连接”按钮进入(千万要注意:只有在mysql服务启动之后,才能点击连接,不然会出现错误码2003的错误提示)
2.右击左上角的root@localhost,然后选择创建数据库;
3.然后在数据库名,填写自己的数据名称;
4.创建之后,点击左边的+号打开,然后再右击table,会出现创建表的选项;
5.点击创建表之后弹出以下框,随后在表格里填写你想要的字段和这个字段的数据类型和长度大小以及是否为空,默认值为多少等,填写完之后点击左下角的创建表就创建成功了;
6.最起初我们肯定要获取到数据的,也就是get请求,所以表中我们要填充一些数据
二、安装后台开发环境:
1.这里博主用的是比较流行的后台框架lavarel,可以直接去管理一键下载即可,然后解压安装;
2.将解压后的文件夹放在phpStudy下的WWW文件夹下,开启phpStudy之后,直接在浏览器里输入:
localhost/解压后的文件夹名称/server/public/,然后回车就可看到以下界面(红色框是我的文件路径),出现以下界面说明开发环境搭建成功。
三、正式编写接口:
1.首先要连接到你的本地数据库(也就是刚才在SQLyog里新建的数据库)。将解压后的项目拖到编辑工具里(这里我用的sublime text),然后打开.env文件,如下图:
2.然后在里面修改一些配置。下图中我框出的六个配置要跟之前设置的要匹配,比如DB_CONNECTION=mysql;DB_HOST=localhost;DB_PORT=3306;即连接的数据库类型、域名和端口号,这个一般都是默认的,也与我们之前设置的是匹配的,最重要的是下面椭圆框框出的三个:
DB_DATABASE=test;这个是链接的数据库名称,刚才我们新建的就是test数据库;
下面两个是用户名和密码:默认都是root
DB_USERNAME=root
DB_PASSWORD=root
3.连接好数据库之后,在app目录下新建一个Question.php文件,用于访问question数据表;
class Question extends Model{
protected $table = 'question';//这里是访问question这个表
protected $primaryKey = 'id';//这是访问question表必须要带的字段
protected function getDateFormat()
{
return time();
}
}4.开始编写真正意义上的接口了。在app/Http/Controllers目录下新建一个QuestionController.php文件,然后在上面写上:
use AppQuestion 表示要接入这个数据,便于操作;
public function getQuestion(Request $request){
$response = array('status'=>'0','msg'=>'failed','data'=>'');
$data = array();
// 获取请求参数值
$questionId = $request->input("questionId");
// 根据参数值去向表里查找对应的数据
$question = Question::find($questionId);
// 查找完毕之后,把查找到的数据赋值给response下的data字段
$response['data'] = $question;
$response['status'] = '2';
$response['msg'] = 'success';
return json_encode($response);
}5.写完接口之后,最后是通过路由进行网络请求的,所以还要在routes目录下的web.php文件里写下:
Route::any('getQuestion', "QuestionController@getQuestion");用于访问这个接口;
6.测试。最后一个步骤就是测试自己写的接口是否可用,测试之前一定要记得把服务器打开。在浏览器地址输入栏输入:
localhost/解压后的文件夹名称/server/public/getQuestion?questionId=1就可以获取到后台返回的数据了。这时会发现,返回的数据跟我们之前在表中填充的数据是一模一样的,那就意味着你写接口是成功的。

php的ci框架后台api PHP开发用哪种框架

PHP开发用哪种框架



PHP开发常用框架
一、CI框架
CI框架是一个简单快速的PHP MVC轻量级框架,它执行效率高,快速简洁,代码量少,适合中小型项目开发,也可以做大型项目,但扩
展能力不是很好。
优势:框架比较简单,适合入门开发,易学,上手快,静态化很容易,文档比较详细。
缺点:由于框架较小,所以功能不完全,比如使用mongoDB就要自己实现接口,对数据库的操作不够安全(写入操作)。对大型项目支持
不好。
开发工作流程:
1、index.php作为前端控制器,初始化运行CodeIgniter所需要的基本资源。
2、Router检查HTTP请求,以确定谁来处理请求。
3、如果缓存(Cache)文件存在,它将绕过通常的系统执行顺序,被直接发送给浏览器。
4、安全(Security)。应用程序控制器(ApplicationController)装载之前,HTTP请求和任何用户提交的数据将被过滤。
5、控制器(Controller)装载模型、核心库、插件、辅助函数,以及任何处理特定请求所需的其它资源。
6、最终视图(View)渲染发送到Web浏览器中的内容。如果开启缓存(Caching),视图首先被缓存,所以将可用于以后的请求。
CI的url模式:
Ci支持的url模式默认为pathinfo形式,也就是使用/隔开。其中//localhost/citest/index.php/ 是固定的,表示的就是入口文件
例如://localhost/citest/index.php/hello/index
二、ThinkPHP框架
TP框架是一共快速兼容简单的轻量级国产PHP开发框架,使用面向对象的结构和MVC模式进行开发。它可以支持Windows、Linux等服
务器,并且支持MySql、Sqlite等多种数据库和PDO扩展。
其自身包含底层架构、兼容处理、基类库、数据库访问层、模版引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对
于跨版本、跨平台和跨数据库移植都比较方便。适合中小型项目开发。
优势:简单易用(Model,Controller,View负责各自的工作),它拥有支持XML标签库技术的编译型模版引擎,支持两种模版标签,动态编
译,缓存技术。还支持自定义标签库,具有独特的数据验证和自动填充,MD5数据加密等功能。
缺点:模版比较固定,导致思想容易固化。
三、Laravel框架
Laravel是一套简洁,优雅的PHP WEB开发框架。集合了PHP比较新的特性,以及各种的设计模式,是一个适合学习的框架,但要求PHP
基础扎实熟练。适合大中型项目的开发。
优势:
1、支持Composer
2、框架结构比较清晰,注重代码的模块化(抽象了中间件,任务,服务等)和可扩展性,路由系统快速高效
3、支持处理跨站请求伪造,在进行form表单post提交时,必须传入{{ csrf_field() }}
4、Laravel 的社区很强大,具有丰富的扩展包及工具
5、具有缓存、身份验证、任务自动化、hash加密、事务等功能
6、独特的 .env环境文件,方便了系统的配置和不同平台的开发
缺点:基于组件式的框架,相对有点臃肿
Laravel路由方法:laravel的路由功能很强大,包括
1、基本路由Route::get('/',function(){ return'HelloWorld';});
2、带参数路由Route::get('user/{id}', function($id){ return 'User '.$id;});
3、路由过滤参数Route::get('user/{id}/{name}',function($id,$name){ //}) -> where(array('id'=> '[0-9]+', 'name' =>'[a-z]+'));
4、子域名路由等
5、控制器路由,例如下面的一些样式
Route::resource('article','ArticleController'); //restful方式(具体包括get/post等)
Route::controller('article','ArticleController'); //restful方式(具体包括get/post等)
Route::get('user/login','UserController@login');//非restful方式 get
Route::post('user/i','UserController@login');//非restful方式post四、Yii 框架
Yii Framework是一个基于组件、用于大规模web应用开发的高性能PHP开源框架,是目前最具效率的PHP框架之一。适合大型重量型
web应用开发。
优势:
1、纯OOP开发,模型使用方便
2、支持命令行工具开发,可以快速的创建一个web应用程序的代码
3、具有高度的可重用性和可扩展性
4、开发速度快,性能优异且功能丰富
5、支持composer包管理工具
缺点:model 层考虑较少,文档中中文文档较少。要求php技术精通水平,OOP编程也要很熟练
推荐教程:ThinkPHP教程 我爱编程网

以上就是我爱编程网小编为大家带来的php的ci框架后台api PHP开发用哪种框架,希望对大家有帮助,了解更多相关资讯请关注我爱编程网。
与“php的ci框架后台api PHP开发用哪种框架”相关推荐
php后端服务器ci框架 PHP开发用哪种框架
php后端服务器ci框架 PHP开发用哪种框架

ci框架如何去除index.phpci框架去除index.php的方法:首先打开apache的配置文件并修改;然后在CI的根目录下建立“.htaccess”;接着修改内容为“RewriteRule^(.*)$/CI/index.php/$1[L]”;最后重启即可。推荐:《PHP视频教程》去掉CodeIgniter(CI)默认url中的index.php的步骤:1.打开apach

2023-10-05 20:46:42
php后台框架哪种好 用哪种php框架开发好
php后台框架哪种好 用哪种php框架开发好

用哪种php框架开发好1)初级PHP:Thinkphp,Yii,Laravel等驾轻就熟,增删改查必备。2)中级PHP:get进阶技--数据库索引和优化自不必说,分表分库还是要有的,memcache和redis的使用频率不能低于月次,不了解前端是不是说不过去了?3)高级PHP:除了上面的条件外,还要有门面担当的素质,玩转Linux常用指令,熟悉memcache和redis原理,

2023-09-24 03:21:01
好用简单的php后台框架 PHP开发用哪种框架
好用简单的php后台框架 PHP开发用哪种框架

PHP开发用哪种框架PHP开发常用框架一、CI框架CI框架是一个简单快速的PHPMVC轻量级框架,它执行效率高,快速简洁,代码量少,适合中小型项目开发,也可以做大型项目,但扩展能力不是很好。优势:框架比较简单,适合入门开发,易学,上手快,静态化很容易,文档比较详细。缺点:由于框架较小,所以功能不完全,比如使用mongoDB就要自己实现接口,对数据库的操作不够安全(写入

2023-09-24 16:14:12
php的ci框架後台api php ci框架怎么对接短信接口
php的ci框架後台api php ci框架怎么对接短信接口

php开发api用什么框架什么是Lumen?Lumen是一个由Laravel组件搭建而成的微框架,由Laravel官方维护。Lumen为速度而生,是当前最快的PHP框架之一,甚至比类似的微框架Silex速度还要快。Lumen比其他微框架的优点是,构建在Laravel之上,使其具备Laravel强大的功能,如路由,依赖注入,EloquentORM,数据库迁移管理,队列和计划任务等。

2023-10-03 08:00:31
php极速后台框架 PHP开发用哪种框架
php极速后台框架 PHP开发用哪种框架

什么是php框架?php框架对很多新手而言可能会觉得很难攀越,其实不然,只要知道一个框架的流程,明白原理了,基本类似框架都可以看懂,php框架真正的发展要从php5开始了,其实php4时代就有一些框架,但是因为框架并没有给大家带来多方便而觉得很复杂,速度没有纯php好,所以一直到了php5才有大的发展,php5的面向对象模型的修改对框架的发展起了很大的作用。2php框架介绍框架

2023-09-06 14:37:01
php后台框架推荐 PHP开发用哪种框架
php后台框架推荐 PHP开发用哪种框架

php现在比较热门实用的框架有哪些?PHP作为强大的Web开发语言,上手非常容易,开发效率很高,不需要像Java一样进行编译后才能执行,但是如果用原生的PHP来开发还是会存在开发速度慢,或者说后期维护难度大,缺乏代码严谨性等问题,我就需要使用目前流行的MVC框架,那么现在有哪些PHP框架更方便,更快捷呢?1.Laravellaravel可以说是从去年到今年都是最热门的PHP框架

2023-09-06 20:06:56
网页后台php框架 PHP开发用哪种框架
网页后台php框架 PHP开发用哪种框架

PHP有哪些流行的框架PHP有哪些流行的框架?PHP有哪些流行的框架?PHP作为一种十分流行的编程语言,拥有大量的应用领域和开源程序库。其中,PHP框架可以有效提高对PHP语言的理解和运用水平。框架作为一种用于开发网络应用程序的基础架构,可以让开发者在不同项目的开发中提高效率。在PHP框架领域中,有许多众所周知、使用广泛的优秀框架,其中一些常见的PHP框架如下:1.Lara

2023-09-11 18:33:13
php前后台免费框架 PHP开发用哪种框架
php前后台免费框架 PHP开发用哪种框架

php现在比较热门实用的框架有哪些?PHP作为强大的Web开发语言,上手非常容易,开发效率很高,不需要像Java一样进行编译后才能执行,但是如果用原生的PHP来开发还是会存在开发速度慢,或者说后期维护难度大,缺乏代码严谨性等问题,我就需要使用目前流行的MVC框架,那么现在有哪些PHP框架更方便,更快捷呢?1.Laravellaravel可以说是从去年到今年都是最热门的PHP框架

2023-09-18 16:24:45