PHP&MySQL(三)——数组
前一段忙着比赛忙着找实习,最后一地鸡毛,就是长长教训罢了。。。。
看书还是多必须的,试着高效的、踏实的做吧!!
<?php
//PHP数组其实能创建很多种数据结构,列表,堆栈,队列,树等
//数组创建array_fill
$start_index=1;
$num=10;
$value="fuck";
$array1=array_fill($start_index, $num, $value); print_r($array1);echo "<hr/>"; print count($array1); echo "<br/>"; //count计数实现,返回一个数,代表数组长度
//print_r(array_count_values($array1)); //移除元素
unset($array1[3]);
$array2=$array1;
//unset($array1);
print_r($array1);echo "<hr/>"; $start="a";
$limit="z";
$array_letters=range($start, $limit);
print_r($array_letters);echo "<hr/>"; //异构数组,即数组中有各种类型的
$array_yigou=array("fuck",1,23.343,false);
var_dump($array_yigou);echo "<hr/>"; //多维数组
$array_dimensions=array($array1,$array_yigou);
var_dump($array_dimensions);
echo $array_dimensions[1][2];echo "<hr/>"; $array_complicated=array($array_dimensions,$array_yigou);
var_dump($array_complicated);echo "<hr/>"; //foreach,一开始我理解上有点问题,foreach本来就是一个循环了!!!
foreach ($array1 as $person => $saying){
print "No.".$person." says ".$saying."!"."<br/>";
} //比较适合foreach理解的一种方式
foreach ($array1 as $person => $saying){
print "No.".$person." said ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
print "No.".$person." says ".$saying."!"."<br/>";
} echo "<hr/>"; //数组计数
//array_count_values返回一个数组,统计(!!)每个value的个数
$array1Value=array_count_values($array1);
print_r($array1);echo "<br/>";
print $array1Value["fuck"];
//count计数的是“个体”的数目吧
print "There is ".count($array_letters)." letters."; echo "<hr/>"; //神奇的explode和implode
//就是字符串的拆解和安装
//注意一定要有glue或者什么,不能不输入
$sentence="What is your name?";
$explode_demo=explode(" ", $sentence);
var_dump($explode_demo);
var_dump(implode(" ", $explode_demo));echo "<hr/>"; //数组元素搜索判断
//in_array判断是否存在,array_search返回在哪里
echo in_array("fuck", $array1);
$check_list="fuck you";
var_dump(in_array($check_list, $array1));
//in_array第三个参数为严格检查类型,默认为false
$check_list2="1 is in here";
var_dump(in_array($check_list2, $array_yigou,false));
var_dump(in_array($check_list2, $array_yigou,true)); print array_search("fuck", $array1);
print array_search(1, $array_yigou);
//array_key_exists判断key是不是存在
echo "<hr/>"; //直接利用key或value
var_dump(array_keys($array1));
var_dump(array_values($array_dimensions));echo "<hr/>"; //implode和array_merge
var_dump(implode(" ", $array1));echo "<hr/>";
var_dump(array_merge($array1,$array_letters)); //数组排序
//注意排序之后,直接改变/返回到原数组
//sort升rsort降
//这里也是我第一次对PHP语言有理解的地方,各种封装好的函数,需要的就是多用,知道,然后熟练的调用
//自己编写的排序函数,往往没有其自带的/现成的函数效率/效果好
$array_num=range(2, 123,3);
print_r($array_num);echo "<hr/>";
rsort($array_num);
print_r($array_num);
sort($array_letters);
var_dump($array_dimensions);echo "<hr/>";
//关联数组,若想保持键值的关系不变,应该用asort
sort($array_yigou);
var_dump($array_yigou);
rsort($array_yigou,SORT_NUMERIC);
var_dump($array_yigou);
asort($array_yigou);
var_dump($array_yigou);
//ksort是根据key值来排序的 //总结_数组
//数组创建——array(),array_fill(),range()
//数组输出——var_dump,print_r
//数组种类——索引数组,关联数组;异构数组,多维数组
//数组排序——sort(),rsort(),asort(),ksort()
//foreach的使用
//implode(),explode()
//is_array,in_array,array_search
//array_count_values,count
PHP&MySQL(三)——数组的更多相关文章
- MySQL(三)
MYSQL(三) 上一章给大家说的是数据库的视图,存储过程等等操作,这章主要讲索引,以及索引注意事项,如果想看前面的文章,url如下: MYSQL入门全套(第一部) MYSQL入门全套(第二部) 索引 ...
- mysql(三) 数据表的基本操作操作
mysql(三) 数据表的基本操作操作 创建表,曾删改查,主键,外键,基本数据类型. 1. 创建表 create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGIN ...
- MySQL三种存储引擎总结
MySQL三种存储引擎 MyISAM.InnoDB.MEMORY 1.MyISAM MyISAM,3.23.34a前的默认存储引擎. 优缺点 优点 在于占用空间小,处理速度快. 缺点 不支持事务的完整 ...
- mysql三种带事务批量插入
原文:mysql三种带事务批量插入 c#之mysql三种带事务批量插入 前言 对于像我这样的业务程序员开发一些表单内容是家常便饭的事情,说道表单 我们都避免不了多行内容的提交,多行内容保存,自然要用到 ...
- 确保数据零丢失!阿里云数据库RDS for MySQL 三节点企业版正式商用
2019年10月23号,阿里云数据库RDS for MySQL 三节点企业版正式商用,RDS for MySQL三节点企业版基于Paxos协议实现数据库复制,每个事务日志确保至少同步两个节点,实现任意 ...
- [mysql]三种方法为root账户指定密码
前言:前段时间把mysql安装后一直没管它,当时就在奇怪为什么mysql登陆不要密码,原来一直用的超用户账户登陆的(简称超级用户) 其实只怪自己太无知,之前一直用的phpbydamin进行的数据库的可 ...
- MySQL(三) 数据库表的查询操作【重要】
序言 1.MySQL表操作(创建表,查询表结构,更改表字段等), 2.MySQL的数据类型(CHAR.VARCHAR.BLOB,等), 本节比较重要,对数据表数据进行查询操作,其中可能大家不熟悉的就对 ...
- mysql 三种恢复方式
为了保障数据的安全,需要定期对数据进行备份.备份的方式有很多种,效果也不一样.一旦数据库中的数据出现了错误,就需要使用备份好的数据进行还原恢复.从而将损失降到最低.下面我们来了解一下MySQL常见的有 ...
- 【转】Mysql三种备份详解
一.备份的目的 做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 二.备份需要考虑的问题 可以容忍丢失多长时间的数据:恢复数据要在多长时间内 ...
- mysql三个应用场景
场景一,数据表自动备份(多个数据表字段同步等),使用触发器.如updatelog记录对资源的所有操作日志,reslastlog记录资源最后操作的日志信息.同步方式实现如下: //创建表 DROP TA ...
随机推荐
- js快速排序方法
function quickSort(arr){ if(arr.length<=1){ return arr; } var arrIndex=Math.floor(arr.length/2); ...
- HTML5 表单新增属性
1. 表单内元素的form属性 在H5中可以把form放到页面的任何地方,然后为该元素指定一个form属性,属性值为该表单的id,这样就可以声明该元素从属于指定表单了 <form id=&quo ...
- NodeJS API简介
简单介绍下NodeJS现有API. Assert(断言):该模块用于编写程序的单元测试用例. Buffer(缓冲块) :处理二进制数据. C/C++ Addons(拓展):Addons插件就是动态连接 ...
- Ajax基本概念和原理
什么是Ajax Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术. Ajax的全称是Asynchronous JavaScript and XML,即异步JavaScript+X ...
- sap后台作业管理/sap打印管理
sap后台作业管理: 后台作业,主要用于运行需要处理大量数据,对交互没有要求的程序.个人认为,简单的创建,配置和监控后台作业没有什么难度.后台作业管理最为困难的解决方案的取舍,系统负载的调控.失控的后 ...
- 简单粗爆的解决同时布CRM引起的死锁问题
和同事一起发布CRM引起CRM死锁,当然可以重启SQL Server不过有更简单的方法,直接执行下面的语句即可 sp_lock kill 58
- Arcgis创建SDE_Geometry、SDO_Geometry的区别【转】
1. SDO_GEOMETRY Oracle Spatial在MDSYS模式下定义了一系列几何类型.函数来支持空间数据的存储和使用,最为人耳熟能详的就是SDO_GEOMETRY这种类型——当然,Arc ...
- 10本Java经典书目推荐
本文列出的10本书是我个人非常喜欢的Java书籍,当我有时间的时候,我就会将它们捧在手里阅读.甚至有些书我反复读过很多遍,每次重新读的时候总会有新的收获.因此这些书也是大部分Java程序员喜欢的书籍. ...
- Sharepoint 文档库根据文件夹层级展示
类似于资源管理器,效果如下 步骤 打开Sharepoint Desinger,编辑Allitems.aspx页面 在PlaceHolderMain里面插入代码,黄色部分需要替换 <table s ...
- 表达式语言EL
表达式语言EL 表达式语言 EL(Expression Language,表达式语言)主要是用在JSP页面中,用来辅助我们产生无脚本的JSP页面,此处的脚本指的是JSP中的Java代码. EL的语法是 ...