php接口 接受ios或android端图片; php接收NSData数据
备注下,
【自己无意中用的方法】接收时,设置两个参数,一个是图片名称,另一个是实际文件。然后用$_FILES处理就可以了。
如: $icon = $_POST['icon'];//这个是图片的名称,用于$_FILES数组的处理
$iconfile = $_POST['iconfile'];//用于实际接收图片文件,只要接受过来就可以,这个变量$iconfile之后并没有用处,用$icon处理就可以了
====================================================================================
网上有个方法,在查询socket,查询php 如何接收ios NSData时看到的。
【IOS 接收PHP 图片】
1,PHP将图片的URL直接返回给IOS端即可,IOS获取到URL处理,下载缓存就可以在APP端使用了。
【IOS上传图片PHP接收】
1、IOS上传图片可能有很多方法,今天作者我用了这种方法,通过IOS 提交NSData 数据,PHP接收并且处理后生成图片。
很多人会问,NSData 传过来是这样的:<ffd8ffe0 00104a46 49460001>
那么问题来了:这是什么数据类型?
答:”我开始也这么问,但是经过我查询了1天的资料,了解,他是16进制的编码,其实编程人员一看就知道。0-F,16进制编码,
但是我有点不太肯定,所以还是想去确认一下。搜索了1天的资料后,终于认同了。16进制的“
2、16进制,我们是不能直接写成图片的?
对啊,我们得将16进制转换成二进制,才能够写出去,再途中,不要复制出来。因为数据类型一旦复制到了TXT中。再进行,就有可能出错。编码这个问题。我是比较烦。
3、我们需要的就是查询自己语言16进制转成二进制的方法。
PHP中。有个方法。可以转成我们需要的二进制。方法详细查询去W3C pack()函数详细说明
$byte=pack("H*",$byte);
然后通过PHP写出文件就可以了。保存格式肯定是"png jpg 等图片格式";
注意:<ffd8ffe0 00104a46 49460001> 这个是NSData, 我们需要处理成:ffd8ffe000104a4649460001 然后进行转码

header("Content-Type: application/octet-stream");
$byte=$_POST['test'];
$byte = str_replace(' ','',$byte); //处理数据
$byte = str_ireplace("<",'',$byte);
$byte = str_ireplace(">",'',$byte);
$byte=pack("H*",$byte); //16进制转换成二进制
file_put_contents('1.jpg',$byte)//写入文件中!

php接口 接受ios或android端图片; php接收NSData数据的更多相关文章
- Vue项目用于Ios和Android端开发
起因 前公司商城App项目使用的是H5开发,有微信公众号.Ios和Android三个版本,H5版本是自己写的一套框架,已经用了有些年头了,承载不下不断涌现出的新需求.而Ios和Android端通过we ...
- iOS key value coding kvc在接收json数据与 model封装中的使用
iOS key value coding kvc在接收json数据与 model封装中的使用 使用 kvc 能够极大的简化代码工作,及以后的接口维护工作: 1:先创建MovieModel类.h和 . ...
- Base64实现android端图片上传到server端
首先要下载Base64.java文件http://iharder.sourceforge.net/current/java/base64/ 将代码复制到project中. 然后上代码: android ...
- JS判断客户端是否是iOS或者Android端
通过判断浏览器的userAgent,用正则来判断手机是否是 IOS 和 Android 客户端. 代码如下: (function(){ var u = navigator.userAgent; var ...
- (四)XML基础(客户端和服务端发送与接收xml数据)
案例: index.jsp <%@ page language="java" import="java.util.*" pageEncoding=&quo ...
- Java服务器对外提供接口以及Android端向服务器请求数据
转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/5056780.html 讲解下java服务器是如何对移动终端提供接口的,以什么数据格式提供出去,移动端又是怎么 ...
- 如何做好 Android 端音视频测试?
在用户眼中,优秀的音视频产品应该具有清晰.低延时.流畅.秒开.抗丢包.高音效等特征.为了满足用户以上要求,网易云信的工程师通过自建源站,在SDK端为了适应网络优化进行QoS优化,对视频编码器进行优化, ...
- iOS解析Server端返回JSON数据
在做quhao APP架构时,后台Server端使用了Java,提供WebService,而iOS和Android作为移动客户端.在做数据交互时,Server端返回JSON格式数据.由于iOS SDK ...
- 将报表移动端集成到自有移动端app方法【IOS、Android】
应用场景 用户有自己的app,希望把报表的移动端[本文中以FineReport移动端为例]功能集成到他们的app里面去,而不需要安装两个app.Android端和IOS端的集成接口是不一样的,下面我们 ...
随机推荐
- selenium学习一
chrome版本和chromedriver的对应关系 chromedriver版本 支持的Chrome版本 v2.40 v66-68 v2.39 v66-68 v2.38 v65-67 v2.37 v ...
- swift - 加速器/摇一摇功能
import UIKit class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoa ...
- 用java修改文件的编码
1.将本地的文件转换成另外一种编码输出,主要逻辑代码如下: /** * 将本地文件以哪种编码输出 * @param inputfile 输入文件的路径 * @param outfile 输出文件的路径 ...
- 初次搭建spring-boot 整合ssm(有许多小坑)
首先,我是采用官网下载,版本最好选择1.5.16的(这是重点) 下载完毕后,用idea打开解压后的项目. 1.整合spring-mvc 在pom.xml中加入web依赖 <dependency& ...
- less 官网讲解 ( http://www.bootcss.com/p/lesscss/ )
变量 变量允许我们单独定义一系列通用的样式,然后在需要的时候去调用.所以在做全局样式调整的时候我们可能只需要修改几行代码就可以了. // LESS @color: #4D926F; #header { ...
- linux强制拷贝避免输入yes方法
Linux下默认cp命令是有别名(alias cp='cp -i')的,无法强制覆盖,即使你用 -f 参数也无法强制覆盖文件,下面提供两种Linux下cp 覆盖方法. 1) 取消cp的alias,这不 ...
- centos7 搭建vnc服务
- [都是原创]Php simplexml 添加节点
Php simplexml 添加节点 原始代码如下 //================<? //创建xml对象$xml = new SimpleXMLElement('<Messages ...
- How to ignore files and directories in subversion?
Step 1 Copy the files and directories to other place. Step 2 Delete the files and directories. Step ...
- Spring 系列教程之 bean 的加载
Spring 系列教程之 bean 的加载 经过前面的分析,我们终于结束了对 XML 配置文件的解析,接下来将会面临更大的挑战,就是对 bean 加载的探索.bean 加载的功能实现远比 bean 的 ...