1.PHP支持两种数组:索引数组(indexed array)和关联数组(associative array),前者使用数字作为键,后者使用字符串作为键。
2.遍历索引数组
2.1 for循环语句
2.2 while循环语句
2.3 do...while循环语句
2.4 foreach语句
2.5使用list()
list()只能用于下标从0开始的索引数组,语法格式如下:
void list(mixed $var, mixed $...)
<span 1</span> <?<span php </span><span 2</span> <span $myarray</span>=<span array</span>('Kimi',5,'Angela'<span ); </span><span 3</span> <span 4</span> <span list</span>(<span $nickname</span>,<span $age</span>,<span $name</span>)=<span $myarray</span><span ; </span><span 5</span> <span echo</span> <span $nickname</span>.' '.<span $age</span>.' '.<span $name</span><span ; </span><span 6</span> ?>
2.6 使用each()(不明白)
2.7 混合使用list()和each()遍历数组(不明白)
3.遍历关联数组
常常使用foreach语句来遍历
下面是一个使用foreach语句遍历二维数组的例子:
<span 1</span> <?<span php </span><span 2</span> <span $myarray</span>=<span array</span><span ( </span><span 3</span> 'boy'=><span array</span><span ( </span><span 4</span> 'name'=>'Kimi', <span 5</span> 'age'=>4, <span 6</span> 'nickname'=>'kimi', <span 7</span> ), <span 8</span> 'girl'=><span array</span><span ( </span><span 9</span> 'name'=>'Cindy', <span 10</span> 'age'=>5, <span 11</span> 'nickname'=>'wind' <span 12</span> ), <span 13</span> <span ); </span><span 14</span> <span foreach</span>(<span $myarray</span> <span as</span> <span $gender_key</span> => <span $gender_value</span><span ){ </span><span 15</span> <span echo</span> <span $gender_key</span>.' => <br>'<span ; </span><span 16</span> <span 17</span> <span foreach</span>(<span $gender_value</span> <span as</span> <span $key</span> => <span $value</span><span ){ </span><span 18</span> <span echo</span> '  '.<span $key</span>.' => '.<span $value</span>.'<br>'; <span //</span><span  似乎是增加一个空格</span> <span 19</span> <span } </span><span 20</span> <span } </span><span 21</span> ?>
4.数组的操作
4.1 检查数组中是否存在指定的值使用array_search()
<span 1</span> <?<span php </span><span 2</span> <span $myarray</span>=<span array</span>('name'=>'Kimi','age'=>5,'hobby'=>'reading',1=>2013<span ); </span><span 3</span> <span 4</span> <span $key</span>=<span array_search</span>('Kimi',<span $myarray</span><span ); </span><span 5</span> <span echo</span> '<p>'.<span $key</span><span ; </span><span 6</span> <span 7</span> <span $key</span>=<span array_search</span>(5,<span $myarray</span><span ); </span><span 8</span> <span echo</span> '<p>'.<span $key</span><span ; </span><span 9</span> <span 10</span> <span $key</span>=<span array_search</span>('read',<span $myarray</span><span ); </span><span 11</span> <span var_dump</span>(<span $key</span><span ); </span><span 12</span> <span 13</span> <span $key</span>=<span array_search</span>(2013,<span $myarray</span><span ); </span><span 14</span> <span echo</span> '<p>'.<span $key</span><span ; </span><span 15</span> ?>
4.2 把一个或多个数组合并为一个数组使用array_merge()
函数返回合并后的数组,如果待合并的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。如果待合并的数组中包含相同的数组键名,后面的值将不会覆盖原来的值,而是附加到该元素后面。
<span 1</span> <?<span php </span><span 2</span> <span $girl</span>=<span array</span>('name'=>'Cindy','age'=>5<span ); </span><span 3</span> <span $boy</span>=<span array</span>('name'=>'Kimi','age'=>4<span ); </span><span 4</span> <span $girl_date</span>=<span array</span>(0=>2000<span ); </span><span 5</span> <span $boy_date</span>=<span array</span>(0=>2001<span ); </span><span 6</span> <span 7</span> <span $myarray</span>=<span array_merge</span>(<span $girl</span>,<span $boy</span>,<span $girl_date</span>,<span $boy_date</span><span ); </span><span 8</span> <span var_dump</span>(<span $myarray</span><span ); </span><span 9</span> ?>
4.3 把一个数组分割为多个数组使用array_chunk()
语法格式如下:
array array_chunk(arrray $input, int $size [, bool $preserve_keys])
其中,$input是分割的数组变量,$size是分割成的每个数组的元素个数(最后一个数组的元素可以小于$size),可选参数$preserve_keys默认为false,表示分割后的数组索引将从0开始重新编排。若设置为true,则分割后的数组将保留原数组中的键名。一维数组分割一次变成二维数组。
4.4 统计数组中所有值出现的次数使用array_count_values()
语法格式如下:
array array_count_values( array $input)
其中,$input是待统计的数组。该函数返回一个关联数组,其键名为$input数组中的元素的值,键值为该元素的值在$input数组中出现的次数
<span 1</span> <?<span php </span><span 2</span> <span $boy</span>=<span array</span>('Kimi',5,'age'=>5,'name'=>'Kimi',2005<span ); </span><span 3</span> <span $counts</span>=<span array_count_values</span>(<span $boy</span><span ); </span><span 4</span> <span print_r</span>(<span $counts</span><span ); </span><span 5</span> <span var_dump</span>(<span $counts</span><span ); </span><span 6</span> ?>
4.5 计算数组中所有值的和使用array_sum()
语法格式如下:
number array_sum(array $array)
4.6 删除数组中重复的值使用array_unique()
语法格式如下:
array array_unique(array $array)
其中,$array是待操作的数组。该函数首先将键值作为字符串进行排序,保留第一次遇到的值所对应的键名,最后返回一个没有重复值得新数组。
4.7 计算数组中的元素数目使用count()
语法格式如下:
int count( array $array [, int $mode])
其中,$array是待计算的数组,可选参数$mode默认值为0,表示不进行递归统计元素个数,可以设置为1(或COUNT_RECURSIVE),表示递归统计元素的数目。
<span 1</span> <?<span php </span><span 2</span> <span $myarray</span>=<span array</span><span ( </span><span 3</span> 'boy'=><span array</span>('name'=>'Kimi', <span 4</span> 'nickname'=>'K', <span 5</span> 'age'=>5), <span 6</span> 'girl'=><span array</span>('name'=>'Cindy', <span 7</span> 'nickname'=>'C', <span 8</span> 'age'=>4), <span 9</span> <span ); </span><span 10</span> <span 11</span> <span echo</span> '<P>不递归统计元素个数:'.<span count</span>(<span $myarray</span><span ); </span><span 12</span> <span echo</span> '<p>递归统计元素个数:'.<span count</span>(<span $myarray</span>,<span COUNT_RECURSIVE); </span><span 13</span> ?>
4.8 对数组正向排序使用sort()
语法格式如下:
bool sort( array &$array [, int $sort_flags])
其中,参数$array是待排序的数组,可选参数$sort_flags可以为下面4种设置之一。
·SORT_REGULAR:通过正常比较进行排序(不改变类型)
·SORT_NUMBER:将数组元素作为数字来比较进行排序
·SORT_STRING:将数组元素作为字符串来比较并进行排序
·SORT_LOCATE_STRING:根据当前的区域(locate)设置把数组元素作为字符串比较并进行排序
4.9 对数组逆向排序使用rsort()
类比正向排序。
4.10 将数组中的元素顺序翻转使用array_reverse()
语法格式如下:
array array_reverse( array $array [, bool $preserve_keys])
其中,$array是待翻转的数组,可选参数$preserve_keys默认为FALSE,表示不保留原有的键名,设置为TRUE后,表示翻转数组元素时保留原有的键名。(关于可选参数,存在疑惑,见下面程序)
<span 1</span> <?<span php </span><span 2</span> <span $myarray</span>=<span array</span>('gdp'=>'GDP','ht'=>'HT','lq'=>'LQ','lc'=>'LC'<span ); </span><span 3</span> <span $new_array</span>=<span array_reverse</span>(<span $myarray</span>,<span FALSE</span><span );//无论是FALSE还是TRUE,键名依旧未改变 </span><span 4</span> <span echo</span> '<p>'<span ; </span><span 5</span> <span print_r</span>(<span $new_array</span><span ); </span><span 6</span> ?>
4.11 用给定的值填充数组使用array_pad()
语法格式如下:
array array_pad( array $input, int $pad_size, mixed $pad_value)
其中,参数$input是待填充的数组,参数$pad_size是填充后数组的大小,参数$pad_value是用来填充的元素。如果$pad_size为正,填充的元素将位于$input右侧,反之亦然。
4.12 计算多个数组的交集使用array_intersect()
语法格式如下:
array array_intersect( array $array1 [, array $array2 [, array $...] ] )

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Atom编辑器mac版下载
最流行的的开源编辑器

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

Dreamweaver Mac版
视觉化网页开发工具