网站模板库
  • 首页
  • web前端工具
    • HTML/JS转换工具
    • JS/HTML格式化工具
    • 字母/英文大小写转换工具
    • robots.txt文件生成工具
    • Js压缩/格式化工具
    • Css在线压缩工具_代码格式化
  • 关于我们
    • 免责声明
    • 联系我们
    • 广告服务
    • 服务项目
    • 关于我们
    • 网站轮播
    • 公告
    • 成都优优科技专用
    • 按行业分类
  • web学院
    • 服务器教程
    • 学习资料
      • 基础书籍
      • 交互书籍
      • 入门教程
      • 特效分类
    • 案例分享
    • web资讯
  • 网页特效
    • 图片特效
    • 导航特效
    • 滑动按钮
    • 表单特效
    • 文字特效
    • 弹窗特效
    • 其他特效
  • 织梦模板
    • 科技/电子/数码/通信
    • 文化/艺术/广告/传媒
    • 装修/设计/家居/家具
    • 基建/施工/地产/物业
    • 餐饮/酒店/旅游/票务
    • 食品/果蔬/饮料/日用
    • 服饰/珠宝/礼品/玩具
    • 摄影/婚庆/家政/生活
    • 运动/健身/体育/器材
    • 学校/教育/培训/科研
    • 美容/保健/医院/医疗
    • 金融/财税/咨询/法律
    • 政府/组织/集团/协会
    • 汽车/物流/交通/搬运
    • 机械/设备/制造/仪器
    • 化工/环保/能源/材料
    • 农业/畜牧/养殖/宠物
    • 其他模版
    • IT/软件/信息/互联网
  • 手机模板
    • 手机APP模板
    • 微信小程序模板
    • wap
  • 网站模板
    • joomla模板
    • Drupal模板
    • z-blog模板
    • EyouCms模板
    • Bootstrap模板
    • 帝国cms模板
    • CmsEasy模板
    • MetInfo模板
    • 购物商城模板
      • Shopify主题
      • PrestaShop主题
    • 后台模板
    • 纯HTML模板
    • ecshop模板
    • phpwind模板
    • pbootcms模板
    • phpcms模板
    • wordpress模板
    • discuz模板
  • 教程
    • 织梦教程
    • Discuz教程
    • WordPress教程
    • Phpcms教程
    • Phpwind教程
    • ECShop教程
    • Joomla教程
    • Drupal教程
    • zblog教程
    • EyouCMS教程
    • 帝国cms教程
    • MetInfo教程
    • CmsEasy教程
登录
当前位置:网站模板库 > web学院 > 服务器教程 > php 做安卓 服务器 怎么编写代码
商业源码 服务器教程 2024-01-07 9:31:02

php 做安卓 服务器 怎么编写代码

php 做安卓 服务器 怎么编写代码,第1张

php 只能做服务端的数据处理,然后将数据用接口的方式,以json的数据形式给安卓客户端程序调用。

testphp

<!--php

 

class Response {

    const JSON = json;

    /

     按综合方式输出通信数据

     @param integer $code 状态码

     @param string $message 提示信息

     @param array $data 数据

     @param string $type 数据类型

     return string

    /

    public static function show($code, $message = &#39;&#39;, $data = array(), $type = self::JSON) {

        if(!is_numeric($code)) {

            return &#39;&#39;;

        }

 

        $type = isset($_GET[&#39;format&#39;])  $_GET[&#39;format&#39;] : self::JSON;

 

        $result = array(

            &#39;code&#39; =--> $code,

            'message' => $message,

            'data' => $data,

        );

 

        if($type == 'json') {

            self::json($code, $message, $data);

            exit;

        } elseif($type == 'array') {

            var_dump($result);

        } elseif($type == 'xml') {

            self::xmlEncode($code, $message, $data);

            exit;

        } else {

            // TODO

        }

    }

    /

     按json方式输出通信数据

     @param integer $code 状态码

     @param string $message 提示信息

     @param array $data 数据

     return string

    /

    public static function json($code, $message = '', $data = array()) {

         

        if(!is_numeric($code)) {

            return '';

        }

 

        $result = array(

            'code' => $code,

            'message' => $message,

            'data' => $data

        );

 

        echo json_encode($result);

        exit;

    }

 

    /

     按xml方式输出通信数据

     @param integer $code 状态码

     @param string $message 提示信息

     @param array $data 数据

     return string

    /

    public static function xmlEncode($code, $message, $data = array()) {

        if(!is_numeric($code)) {

            return '';

        }

 

        $result = array(

            'code' => $code,

            'message' => $message,

            'data' => $data,

        );

 

        header(Content-Type:text/xml);

        $xml = <!--xml version=&#39;10&#39; encoding=&#39;UTF-8&#39;-->

;

        $xml = <root>

;

 

        $xml = self::xmlToEncode($result);

 

        $xml = </root>;

        echo $xml;

    }

 

    public static function xmlToEncode($data) {

 

        $xml = $attr = ;

        foreach($data as $key => $value) {

            if(is_numeric($key)) {

                $attr =  id='{$key}';

                $key = item;

            }

            $xml = <{$key}{$attr}>;

            $xml = is_array($value)  self::xmlToEncode($value) : $value;

            $xml = <!--{$key}-->

;

        }

        return $xml;

    }

 

}

 

<!--php

require_once(&#39;/testphp&#39;);

$data=array(

&#39;id&#39;=-->1,

'name'=>david

);

Response::show(200,'success',$data);

from bottle import run,route,request,response

from urllibrequest import urlopen

@route('<url:re:>')

def get_method(url):

      data=urlopen(url)

      return dataread()

run(host='0000',port=3456,debug=True)

我简单写一个,使用bottle框架,注意不要该ie的代理,使用别的浏览器如firefox代理到

127001:3456

1、安装ftp服务端,方便你从客户端上传文件。linux上一般安装vsftp

VSFTP的软件安装包是: vsftpd-222-12el6_51i686rpm

查询:#rpm -q vsftpd

安装:#rpm -ivh vsftpd-222-12el6_51i686rpm或者直接yum install vsftpd

启动、停止及重启VSFTP的命令: #service vsftpd start/stop/restart

配置文件:

/etc/vsftpd/vsftpdconf //主配置文件

/etc/vsftpdftpusers //被禁止登录FTP的用户文件

/etc/vsftpduser_list //允许登录FTP的用户文件

a、将登录后的用户限制在本地家目录下:

#vi /etc/vsftpd/vsftpdconf

chroot_list_enable=YES

chroot_list_file=/etc/vsftpdchroot_list

新建受限用户的列表文件并加入受限用户名

#vi /etc/vsftpdchroot_list

raykeso

重启ftp服务

#service vsftpd restart

2、安装apache,开启目录索引,这样你就可以浏览和下载文件。

apache配置文件

<Directory "I:/build/dist"> #设置浏览文件的目录

Options Indexes #开启目录列表索引模式Order allow,deny

Allow from all

</Directory>

下面是我自己写的一个读取并显示txt文件的demo,希望对您有帮助。

public class Client {

public static void main(String[] args) {

ClientFrame f = new ClientFrame();

}

}

import javaawtBorderLayout;

import javaawtContainer;

import javaawtDimension;

import javaawtGridLayout;

import javaawtToolkit;

import javaawteventActionEvent;

import javaawteventActionListener;

import javaioDataInputStream;

import javaioDataOutputStream;

import javaioIOException;

import javanetSocket;

import javanetUnknownHostException;

import javautilVector;

import javaxswingBorderFactory;

import javaxswingJButton;

import javaxswingJFrame;

import javaxswingJList;

import javaxswingJScrollPane;

import javaxswingJTextArea;

import javaxswingeventListSelectionEvent;

import javaxswingeventListSelectionListener;

public class ClientFrame extends JFrame implements ActionListener, ListSelectionListener{

private JList list = null;

private JButton sbtn = null;

private JButton cbtn = null;

private Vector v = null;

private JTextArea txt = null;

private Container control = null;

private Container btn = null;

private Socket client = null;

private DataInputStream reader = null;

private DataOutputStream writer = null;

public ClientFrame(){

thislist = new JList();

thislistsetBorder(BorderFactorycreateTitledBorder("文件列表"));

thislistaddListSelectionListener(this);

thissbtn = new JButton("显示");

thissbtnaddActionListener(this);

thiscbtn = new JButton("清除");

thiscbtnaddActionListener(this);

thiscontrol = new Container();

thiscontrolsetPreferredSize(new Dimension(150, 400));

thiscontrolsetLayout(new BorderLayout());

thiscontroladd(new JScrollPane(thislist),BorderLayoutCENTER);

thisbtn = new Container();

thisbtnsetLayout(new GridLayout(1,2));

btnadd(sbtn);

btnadd(cbtn);

thiscontroladd(thisbtn,BorderLayoutSOUTH);

thistxt = new JTextArea();

thistxtsetEditable(false);

thistxtsetSize(350, 400);

thissetTitle("客户端");

thissetSize(500, 400);

thissetVisible(true);

Dimension displaySize = ToolkitgetDefaultToolkit()getScreenSize();

thissetLocation((displaySizewidth - thisgetWidth()) / 2, (displaySizeheight - thisgetHeight()) / 2);

thissetLayout(new BorderLayout());

thisadd(thiscontrol,BorderLayoutWEST);

thisadd(new JScrollPane(thistxt),BorderLayoutCENTER);

thissetDefaultCloseOperation(JFrameEXIT_ON_CLOSE);

try {

//thisclient = new Socket("1921683234",6666);

thisclient = new Socket("1921681100",6666);

thisreader = new DataInputStream(clientgetInputStream());

thiswriter = new DataOutputStream(clientgetOutputStream());

} catch (UnknownHostException e) {

eprintStackTrace();

} catch (IOException e) {

eprintStackTrace();

}

}

public void actionPerformed(ActionEvent event){

if(eventgetSource() == sbtn){

if(v == null){

v = new Vector();

}

else{

vclear();

}

try {

writerwriteUTF("getfilelist");

writerflush();

String t = readerreadUTF();

while( t != null && !tequals("")){

vadd(t);

t = readerreadUTF();

}

} catch (UnknownHostException e) {

eprintStackTrace();

} catch (IOException e) {

eprintStackTrace();

}

thislistsetListData(v);

}

if(eventgetSource() == cbtn){

thistxtsetText("");

}

}

public void valueChanged(ListSelectionEvent e) {

int i = thislistgetSelectedIndex();

if (! thislistgetValueIsAdjusting() && i != -1) {

try {

writerwriteUTF("getfilecontent_" + i);

writerflush();

String tmp = readerreadUTF();

thistxtsetText(tmp);

} catch (IOException e1) {

e1printStackTrace();

}

}

}

}

import javaioDataInputStream;

import javaioDataOutputStream;

import javaioFile;

import javaioFileInputStream;

import javaioIOException;

import javaioInputStreamReader;

import javaioReader;

import javanetServerSocket;

import javanetSocket;

import javautilArrayList;

import javautilIterator;

public class Server {

static ArrayList<File> fileArray = new ArrayList<File>();

public static void main(String args[]) {

ServerSocket server = null;

Socket client = null;

String cmd = "";

try {

server = new ServerSocket(6666);

client = serveraccept();

DataInputStream reader = new DataInputStream(clientgetInputStream());

DataOutputStream writer = new DataOutputStream(clientgetOutputStream());

while(true){

cmd = readerreadUTF();

Systemoutprintln(cmd);

if(cmdequals("getfilelist")){

fileArrayclear();

//fileArray = getFile(new File("D:/tmp"));

fileArray = getFile(new File("D:/学习/教程/学习笔记"));

String fn = "";

for(int k = 0; k < fileArraysize(); k ++){

fn = fileArrayget(k)getName();

writerwriteUTF(fn);

writerflush();

}

writerwriteUTF("");

}

if(cmdstartsWith("getfilecontent_")){

int i = IntegerparseInt(cmdsplit("_")[1]);

File f = fileArrayget(i);

Reader in = new InputStreamReader(new FileInputStream(f));

int tempbyte;

String str = "";

while ((tempbyte = inread()) != -1) {

str += (char)tempbyte;

//Systemoutprintln(str);

}

inclose();

writerwriteUTF(str);

}

}

} catch (IOException e) {

eprintStackTrace();

}

}

private static ArrayList<File> getFile(File f) {

File[] ff = flistFiles();

for (File child : ff) {

if (childisDirectory()) {

getFile(child);

} else {

fileArrayadd(child);

}

}

return fileArray;

}

}

数据 文件 提示信息 方式 配置文件
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » php 做安卓 服务器 怎么编写代码

商业源码 钻石

分享到:
上一篇
DDR4服务器内存条ECC和RECC哪个好?求助各路大侠!
下一篇
网站响应时间过长是怎么回事?

相关推荐

Linux和云计算的发展前景怎么样?

Linux和云计算的发展前景怎么样?

如何搭建大型网站系统?

如何搭建大型网站系统?

穿越火线哪个区比较好?

穿越火线哪个区比较好?

如何查询对方的婚姻状况,怎么查询个人婚姻状况

如何查询对方的婚姻状况,怎么查询个人婚姻状况

0条评论

发表评论 取消回复

要发表评论,您必须先登录。

提供最优质的资源集合

立即查看 了解详情
网站模板库

主题/付费下载/查看/余额管理/自定义积分,集成支付,卡密,推广奖励等。

本站导航
  • 链接标题
友情链接
  • 链接标题
快速搜索
本站由钛宇宙强力驱动
友情链接:
    商业源码网蜀ICP备2023005044号
    网站模板库
    • 登录
    • 注册
    网站模板库
    • 首页
    • web前端工具►
      • HTML/JS转换工具
      • JS/HTML格式化工具
      • 字母/英文大小写转换工具
      • robots.txt文件生成工具
      • Js压缩/格式化工具
      • Css在线压缩工具_代码格式化
    • 关于我们►
      • 免责声明
      • 联系我们
      • 广告服务
      • 服务项目
      • 关于我们
      • 网站轮播
      • 公告
      • 成都优优科技专用
      • 按行业分类
    • web学院►
      • 服务器教程
      • 学习资料►
        • 基础书籍
        • 交互书籍
        • 入门教程
        • 特效分类
      • 案例分享
      • web资讯
    • 网页特效►
      • 图片特效
      • 导航特效
      • 滑动按钮
      • 表单特效
      • 文字特效
      • 弹窗特效
      • 其他特效
    • 织梦模板►
      • 科技/电子/数码/通信
      • 文化/艺术/广告/传媒
      • 装修/设计/家居/家具
      • 基建/施工/地产/物业
      • 餐饮/酒店/旅游/票务
      • 食品/果蔬/饮料/日用
      • 服饰/珠宝/礼品/玩具
      • 摄影/婚庆/家政/生活
      • 运动/健身/体育/器材
      • 学校/教育/培训/科研
      • 美容/保健/医院/医疗
      • 金融/财税/咨询/法律
      • 政府/组织/集团/协会
      • 汽车/物流/交通/搬运
      • 机械/设备/制造/仪器
      • 化工/环保/能源/材料
      • 农业/畜牧/养殖/宠物
      • 其他模版
      • IT/软件/信息/互联网
    • 手机模板►
      • 手机APP模板
      • 微信小程序模板
      • wap
    • 网站模板►
      • joomla模板
      • Drupal模板
      • z-blog模板
      • EyouCms模板
      • Bootstrap模板
      • 帝国cms模板
      • CmsEasy模板
      • MetInfo模板
      • 购物商城模板►
        • Shopify主题
        • PrestaShop主题
      • 后台模板
      • 纯HTML模板
      • ecshop模板
      • phpwind模板
      • pbootcms模板
      • phpcms模板
      • wordpress模板
      • discuz模板
    • 教程►
      • 织梦教程
      • Discuz教程
      • WordPress教程
      • Phpcms教程
      • Phpwind教程
      • ECShop教程
      • Joomla教程
      • Drupal教程
      • zblog教程
      • EyouCMS教程
      • 帝国cms教程
      • MetInfo教程
      • CmsEasy教程

      弹窗标题

      这是一条网站公告,可在后台开启或关闭,可自定义背景颜色,标题,内容,用户首次打开关闭后不再重复弹出,此处可使用html标签...