php工作笔记1-数组常用方法总结,二维数组的去重,上传图片到oss服务器
1、二维数组去重,生成二维数组
private function array_unique_fb($array2D){
$data = array();
foreach($array2D as $key =>$value)
{
$isFind = false;
foreach ($data as $key1=>$value1)
{
if ($value1['OpenID'] == $value['OpenID']) {
$isFind = true;
break;
}
}
if (!$isFind)
{
array_push($data, $value);
}
}
return $data;
}
2、上传图片到服务器
private function saveImage($imgurl)
{
$url='Application/Admin/Public/default/images/';
if(!empty($_FILES)){
// function uprename()
// {
// return time() . rand(1000, 5000);
// }
$rule=time() . rand(1000, 5000);
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 2097152;// 2M
$upload->saveRule = $rule;
$upload->exts = array('jpg', 'png', 'jpeg');// 设置附件上传类型
$upload->rootPath = SITE_DIR.$url;
$upload->savePath = '';// 设置附件上传目录
$upload->thumb = true;
$upload->thumbPrefix = 'm_';
$upload->thumbMaxWidth = '230';
$upload->thumbMaxHeight = '230';
$info = $upload -> uploadOne($imgurl);
// var_dump($info);
// exit;
//将图片上传到本地
if (!$info)
{
// 上传错误提示错误信息
$err = $upload->getError();
$result['result'] = false;
$result['errMsg'] = $err;
return $result;
}
else
{
$image = new \Think\Image();
$open = SITE_DIR.$url.$info['savepath'].$info['savename'];
$image->open($open);
$width = $image->width(); // 返回图片的宽度
$height = $image->height(); // 返回图片的高度
// if($width<230 || $height<230)
// {
// echo "<script>alert('上传图片的高度和宽度均应大于等于230');history.go(-
1);</script>";
// exit();
// }
//将图片裁剪为230x230并保存为corp.jpg
$image->thumb(1423, 550,\Think\Image::IMAGE_THUMB_FIXED)->save( SITE_DIR.$url.$info
['savepath'].'m_'.$info['savename']);
$rootPath = 'Application/Admin/Public/default/images/';
//将头像存储到OSS
$filed = SITE_DIR."Application/Admin/Public/default/images/".$info['savepath'].'m_'.
$info['savename'];
$save_url = "/".$info['savepath'].$info['savename'];
$local_url = $filed;
$file_name= $info['savename'];
$save_type = 'hudong';
$module_name = 'UCenter';
UP($save_url,$local_url,$file_name,$save_type,$module_name);
$ossname = $info['savepath'].$info['savename'];
$url = $rootPath.$info['savepath'].$info['savename'];
//http://hidong-hudong.oss-cn-hangzhou.aliyuncs.com/hudong/UCenter/2015-10-
22/56289782ed389.jpg
return $ossname; // 2015-10-22/56289782ed389.jpg
}
}
}
3、Explode(“,”,$Str) 将字符串转化为数组
Implode(“,”,$Arr) 将数组转化为字符串
Array_push($arr,”sss”) 将字符串插入数组
In_Array( “aa”,$Arr) //判断aa是否在$Arr【一维数组】中
php工作笔记1-数组常用方法总结,二维数组的去重,上传图片到oss服务器的更多相关文章
- 【Java学习笔记之九】java二维数组及其多维数组的内存应用拓展延伸
多维数组声明 数据类型[][] 数组名称; 数据类型[] 数组名称[]; 数据类型数组名称[][]; 以上三种语法在声明二维数组时的功能是等价的.同理,声明三维数组时需要三对中括号,中括号的位置可以在 ...
- C语言数组:C语言数组定义、二维数组、动态数组、字符串数组
1.C语言数组的概念 在<更加优美的C语言输出>一节中我们举了一个例子,是输出一个 4×4 的整数矩阵,代码如下: #include <stdio.h> #include &l ...
- PHP如何判断一个数组是一维数组或者是二维数组?用什么函数?
如题:如何判断一个数组是一维数组或者是二维数组?用什么函数? 判断数量即可 <?php if (count($array) == count($array, 1)) { echo '是一维数组' ...
- 06-01 Java 二维数组格式、二维数组内存图解、二维数组操作
二维数组格式1 /* 二维数组:就是元素为一维数组的一个数组. 格式1: 数据类型[][] 数组名 = new 数据类型[m][n]; m:表示这个二维数组有多少个一维数组. n:表示每一个一维数组的 ...
- Java菜鸟学习笔记--数组篇(三):二维数组
定义 //1.二维数组的定义 //2.二维数组的内存空间 //3.不规则数组 package me.array; public class Array2Demo{ public static void ...
- 剑指Offer的学习笔记(C#篇)-- 二维数组中的查找
题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数 ...
- [zt]C++二维数组讲解、二维数组的声明和初始化
定义: int *pia = new int[10]; // array of 10 uninitialized ints 此 new 表达式分配了一个含有 10 个 int 型元素的数组,并返回指向 ...
- c语言,指针与数组--指针与二维数组2
指向一维数组的指针 char (*p)[10] ;指向一维数组的指针类型 typedef char(*TYPE_P2ARRAY)[10] ; 该指针可以指向数组 ,且使用起来效果节本相同, ...
- C语言 一维数组叠加为二维数组样例
这里参看memcpy的用法,将一个一维整型数组不停的叠加为二维数组 使用宏定义来控制二维数组的行列 代码如下: #include <stdio.h> #include <stdlib ...
- PHP把2个二维数组合并一个二维数组
$a = array(0 => Array(id => 66,class_name => www.iiwnet.com),1 => Array(id => 67,clas ...
随机推荐
- CSS实现高度和宽度自适应
其实用绝对定位也可以实现高度和宽度的自适应,从而出现自适应大小的区域及滚动条. <%@ Page Language="C#" AutoEventWireup="tr ...
- Win7下搭建VPN服务器教程
前言:VPN就是一个中转器,移动网要访问外网,外网是网通的,没使用VPN的情况下我们就不能访问外网,这时候VPN就把我们的移动网自动转成能和外网连接所匹配的网,就实现了所谓的(fanqiang). 一 ...
- js 常用方法
1: 五秒后跳出提示框 setTimeout("alert('已经过了五秒了')",5000) 2: 十秒后自动关闭窗口 <script language="ja ...
- Yii2安装搭建和将入口文件移到根目录
用Composer下载Yii2速度太慢了,所以我还是喜欢下载打包好的框架文件. 在https://github.com/yiisoft/yii2/releases 下载最新的的Yii2,advance ...
- Java Junit单元测试
使用Junit进行单元测试,首先引入Junit的jar,配置如下. @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(&quo ...
- 浅入浅出EmguCv(二)EmguCv打开指定图片
从这篇文章开始,会介绍一些通过EmguCv实现的一些简单的功能,这个内容的更新会跟我学习OpenCv的进度有关,最近在看一本关于OpenCv的书——<学习OpenCv>,主要例子还是通过这 ...
- LB(Load balance)负载均衡集群--{LVS-[NAT+DR]单实例实验+LVS+keeplived实验} 菜鸟入门级
LB(Load balance)负载均衡集群 LVS-[NAT+DR]单实例实验 LVS+keeplived实验 LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一 ...
- SQL存在一个表而不在另一个表中的数据, 更新字段为随机时间
--更新字段为随机时间 86400秒=1天 UPDATE dl_robot ), ,GETDATE()) ) SQL存在一个表而不在另一个表中的数据 方法一 使用 not in ,容易理解,效 ...
- 在CentOS中安装中文支持
执行命令: # yum groupinstall chinese-support 修改配置文件: # vim /etc/sysconfig/i18n LANG="zh_CN.UTF-8&qu ...
- bzoj4750: 密码安全
Description 有些人在社交网络中使用过许多的密码,我们通过将各种形式的信息转化为 01 信号,再转化为整数,可以将这个 人在一段时间内使用过的密码视为一个长度为 n 的非负整数序列 A_1, ...