T2《PHP数组和字符串》.docx
- 文档编号:6544343
- 上传时间:2023-05-10
- 格式:DOCX
- 页数:22
- 大小:929.12KB
T2《PHP数组和字符串》.docx
《T2《PHP数组和字符串》.docx》由会员分享,可在线阅读,更多相关《T2《PHP数组和字符串》.docx(22页珍藏版)》请在冰点文库上搜索。
T2《PHP数组和字符串》
第2章《PHP数组和字符串》
授课讲师:
衡茜
课时:
2小时
本章目标:
1.掌握数组字符串各种操作
本章重点:
1.数组
2.字符串
本章难点:
1.
回顾重点:
1.数据类型
2.基本语法
内容讲解:
一、数组
(一)引入
(二)定义/语法
PHP的数组在使用尤其是使用foreach遍历上类似于C#中的Diectory这是因为PHP的数组在存储的时候都是使用关联数组进行存储的而关联数组的存储方式使用的就是键值对的结果进行存储
(三)特点
1.PHP数组分为数字索引数组和关联数组,但都被存储为关联数组,数字索引数组和关联数组的唯一区别在于索引的类型
2.PHP数组特点
1)没有大小限制
2)在初始化时已经进行了声明.
3)数组中成员不需要是同种类型
3.数字索引数组
1)索引没有指定时从0开始
$a[]=5;//索引为0
$a[]=6;//索引为1
2)未指定索引元素的默认索引值将紧跟指定索引值元素中的最高索引值
$a[4]=5;//索引为4
$a[]=6;//索引为5
3)在索引数组中,若键值为浮点数,则PHP系统将自动转换为整数
$a[0.9]=5;//索引为0
$a[5.3]=6;//索引为5
4)
4.关联数组
1)
5.
(四)场合
1.
(五)使用
1.数字索引数组创建
使用array()结构来定义
$people=array('aaa','bbb','ccc','ddd');//等同于$people=array(0=>'aaa',1=>'bbb',2=>'ccc',3=>'ddd');
echo$people[2];//程序会输出输出ccc
?
>
自动创建
$people[0]='aaa';
$people[1]='bbb';
$people[2]='ccc';
$people[3]='ddd';
2.关联数组创建
1)使用array()结构来定义
$peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation','cs'=>'birth');
echo$peoples['cs'];//输出birth
2)自动创建
$peoples['xm']='name';
$peoples['xb']='sex';
$peoples['mz']='nation';
$peoples['cs']='birth';
3.foreach循环,最基本通用的遍历方式
语法:
foreach(数组变量名as$key=>$value)
{
//使用key键及Value值
}
4.for循环,只有当数组为索引数组且数组的索引为连续的整数
语法
for($i=0;$i { //访问每个成员使用: 数组变量名[$i] } 5.数组元素排序 sort()函数以升序(从小到大)进行排序rsort()函数以降序(从大到小)进行排序,是按值排序,很可能破坏键与值之间的对应关系.针对于数字索引数组. asort()函数以升序进行排序arsort()函数以降序进行排序,也是按值排序,不会破坏键与值之间的关系,针对于关联数组 ksort()函数以升序进行排序krsort()函数以降序进行排序,按键排序,不会破坏键与值之间的关系. 以上六个函数的语法都是: bool函数名(数组变量名[,SORT_REGULAR/SORT_NUMERIC/SORT_STRING]) 成功排序返回true,失败返回false SORT_REGULAR-正常比较单元 SORT_NUMERIC-单元被作为数字来比较 SORT_STRING-单元被作为字符串来比较 示例 以上示例中可以将foreach遍历输出改为print_r函数输出 shuffle()函数把数组中的元素按随机顺序重新排列,键会被从0开始的连续整数替换 6.数组判断函数 1)in_array()函数,用于检查数组中是否存在指定值 语法: boolin_array(被查找元素,数组变量名[,true/false]) 最后的参数为true时,要求搜索的数据与数组元素值类型相同,默认为false 2)array_key_exists()函数,用于检查数组中是否包含指定的键名 语法: boolarray_key_exists(被查找的键值,数组变量名) 3)count()函数和sizeof()函数代表同一个函数.用于对数组中的元素个数进行统计 intcount(数组变量名[,COUNT_NORMAL/0/COUNT_RECURSIVE/1]) 4) 7.啊 二、字符串 (一)引入 (二)定义/语法 (三)特点 1.单引号形式: 语法: ‘内容’ 1)对单引号,双引号及/原样输出时需要转义 2)单引号中的变量不会被其值替换 2.双引号形式: 语法: “内容” 1)对单引号,双引号及/原样输出时需要转义 2)单引号中的变量会被其值替换 3.定界符形式: 使用PHP开发网页很多情况下会使用字符串输出一段html或Js代码,这个时候如果使用单引号或双引号,肯定要有大量的转义符来对字符串中的引号等特殊字符进行转义,以免出现语法错误.这样做很麻烦,可以使用定界符避免麻烦 语法: << 内容 EOF 1)PHP定界符的作用就是按照原样输出,包括换行格式 2)在PHP定界符中的任何特殊字符都不需要转义 3)PHP定界符中的PHP变量会被其值来替换 4)结束标识符eof必须顶格放置,不能与最左边有空隙 5)EOF不是固定的可以使用其他字符代替EOF,但开始和结束必须一样 4.啊 (四)场合 1. (五)字符函数使用 1.substr()获取子字符串.语法: stringsubstr(字符串,开始处索引[,截取长度]) 开始处索引为负数表示从字符串结尾处指定位置开始 截取长度为负数表示截取到离字符串末端多少的位置 php $a='0123456789'; echosubstr($a,0);//输出: 0123456789 echosubstr($a,-3,3);//输出: 789 echosubstr($a,-7,-2);//输出: 34567 echosubstr($a,2,4);//输出: 2345 ? > 正数下标0123456789 2..表示连接两个字符串 3.strlen()函数: 返回字符串的长度.语法: strlen(字符串) 4.substr_count()函数: 确定指定子字符串在母字符串中出现的次数. 语法: intsubstr_count(母字符串,子字符串[,开始位置,搜索长度]) 5.strstr()函数: 查找子字符串第一次出现的位置之后所有的内容 语法: strstr(母字符串,子字符串) 6.stristr()函数: 与strstr()相同但不区分大小写; 7.strpos()函数: 子字符串在母字符串中首次出现的位置 语法: intstrops(母字符串,子字符串[,开始搜索的位置]) 8.stripos()函数: 与strpos()函数一样,但不区分大小写 9.strrev()函数: 反转字符串.注意不支持中文 10.substr_replace()函数: 使用A字符串的内容在B字符串指定位置处进行替换 语法: mixedsubstr_replace(B字符串,A字符串,开始替换位置[,替换长度]) mixed表示不确定是什么数据类型 substr_replace()函数的参数用法和substr()函数用法相似 开始替换位置为负数表示从字符串结尾处指定位置开始替换 替换长度为负数表示替换到离字符串末端多少的位置 注意: 对于PHP来说一个汉字占两个英文字符长度 11.explode()函数: 拆分字符串为数组. 语法: arrayexplode(拆分依据,被拆分的字符串[,数组元素最大数目]) 12.str_split()函数: 将字符串拆分为相同长度的多个字符串 语法: arraystr_split(字符串[,子字符串长度]) 字符串长度默认为1 13.implode()函数合并字符串: 将数组元素合并为字符串 stringimplode(数组元素之间放置的内容,数组); 数组元素之间放置的内容默认为空字符串”” 14.啊 三、PHP开发工具VS.PHP (一)引入 做程序开发,离不开好的IDE。 微软的VisualStudio一直是.NET平台程序员的必备工具,对于PHP程序员来说都是使用Editplus或PHPEditor等轻量级开发工具。 对于编写小的PHP程序还是很不错,但是开发程序还需要可以调试、跟踪源码,以及对大型项目的管理,这点显然上述工具就做不到了。 这里提供一个VisualStudio的插件用于使用VisualStudio开发PHP企业级应用程序 (二)定义/语法 (三)特点 1. (四)场合 1. (五)使用 1.安装提供的软件: vsphp_en_2.6.3.5601.msi,安装完成后需要破解,如下图 然后双击vsphp_KeyMaker_setup.exe程序运行注册码生成工具 程序启动后有默认的Name及注册码,也可以在Name中输入新值,然后点击Generate生成注册码.最后将Name中的值及Serial值,将他们分别复制到VS.php注册(Enterlicenseinformation)窗口中的Customername及Serialnumber中. 这里提供两个: Name: g! DVT Serial: 01F0Q3-Z7EA57-KR3XQW-GNDGTF-NKDTQ9-T68WQY-D9ZKDK-BY2Y08-VZA927-4B04ER Name: HengXi Serial: 01CEAP-3BKZPQ-FY6AZH-QBJ1H8-HRM23T-HW42ZR-MZ1B5Y-G7CUB9-AMYHGX-0J1V7A 如果没用就自己运行程序生成 输入完成后点OK按钮,如果点OK后出现下图的情况,那就在运行破解程序的时候关闭杀毒软件包括360安全卫士等. 再次启动杀毒软件或360的时候可能还会报病毒,这个时候我们允许他处理,除了vsphp_svc.exe这个文件. 现在如果打开已有的PHP项目或者使用新建PHP项目可能都是有问题的 处理方式就如提示所示,打开运行,在其中输入devenv/resetskippkgs然后点确定即可修复程序 2.配置项目属性 3.啊 四、PHP开发工具ZendStudioForEclipse (一)引入 (二)定义/语法 (三)特点 1. (四)场合 1. (五)使用 1.也许安装后在点击快捷方式ZendStudio启动程序时出现下图显示的效果 可以在程序的安装目录(6.01的安装目录默认为D: \ProgramFiles\Zend\ZendStudioforEclipse-6.0.1)下找到文件ZendStudio.ini,将文件内容中的最后一行文字-Xmx512M改为-Xmx256M然后重新启动该程序.如果还不行,删除该文件 程序不是免费的需要点击Help菜单项下的Register在弹出窗口中输入注册码,注册码从下面的网站获取 这里提供一个: UserName: HengXiLicenseKey: F845EB1B346662230000 点击OK即可完成注册 2.安装汉化包 1.下载语言包,61M 2.解压到一个目录,如I: \Downloads\ZendStudio6.0-Language-Pack-it 3.打开eclipse,Help->SoftwareUpdates->FindandInstall 4.在弹出的子窗体中选择Searchfornewfeaturestoinstall,Next 5.在Updatesitestovisit子窗体中,请勿勾选Sitestoincludeinsearch中的默认项 点击NewLocationSite,选择I: \Downloads\ZendStudio6.0-Language-Pack-it,确定后会出现在Sitestoincludeinsearch中,并且默认勾选,然后Finish 这时候更新管理器会自动查找。 6.查找完毕后,在SearchResults窗体的结果: 展开后我们发现许多中文简体的语言包哈! 勾选全部后发现一个问题 WYSIWYGPHP/HTMLEditingNLFeature(1.0.0.200805051510)requiresfeature"poser". 所见即所得编辑器缺少一个关键部件,那么我们暂时先不安装它,取消勾选,Next 7.同意条款,然后依次Next,Finish,InstallAll,重启eclipse后即可。 3.使用 新建项目: 更改默认工作空间,将其指定到Apache服务器安装目录下的htdocs文件夹下. 查看效果的方式为 4.啊 五、 (一)引入 (二)定义/语法 (三)特点 6. (四)场合 2. (五)使用 1. 2. 六、 (一)引入 (二)定义/语法 (三)特点 1. (四)场合 1. (五)使用 1. 2. 本章总结: 1.PHP数组能存储大容量数据 2.数字索引数组和关联数组 3.数组的循环遍历、排序和长度计算 4.在PHP中经常用的字符串的三种定义方式 5.字符串的切割、拆分、连接、查找以及替换等函数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PHP数组和字符串 T2 PHP 数组 字符串