- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
昨日回顾PHP的执行过程源代码-机器可执行的指令-执行编译过程:词法解析、语法解析 结果是可执行的文件执行:可执行文件的执行本质就是对内存的操作根据程序语言中不同的关键,有不操作,变量(全局变量):在编译不会对内存有影响function:在编译的时候会对内存有影响,在执行时首先查检是否有形参,如果有,看有没有默认值。再看实际调用的语句,有没有传递实参。在栈开辟一个专属于函数的内存空间。会在函数专属的内存开辟一个空间,存储形参名,要在数据段的全局区开辟空间存储数据,再将存储数据的空间地地,传递给栈区的形参。静态变量: 编译时就会对内存有影响:在数据段的静态区存储数据静态变量的数据,静态变量指向函数。 执行时,会在栈区中函数的专属空间开辟一个内存空间,存储变量名,之后再将,静态区中数据100的物理地址,传栈区中的变量。//思路:冒泡排序法第1步,找出最大的一个数,存储在数组的最后 比较次数(数组的长度-1)第2步,找出第2大的数,存储在数组的倒数第2个位置(在第)比较次数数组长度-2)调换两变量的值:方式一:借助于第3个变量方式二:利用和减一个等于另一个方式三:利用异或示例:作用域 PHP作用域指的变量的作用范围。全局作用域 在函数外部定义的变量就叫全局变量,其作用域是全局作用域局部作用域 在函数内部定义的变量就叫局部变量,其作用域是局部作用域。提示:php有很清晰的作用域在函数内部使用外部的变量。方法1:使用$GLOBALS(此函数没有作用域问题,但有脚本限制$_SESSION)示例:方法2:将全局变量,作为实参传递到函数内部方法3:使用global关键字声明原理: 在函数内部使用global声明一个变量时,首先会在全局找,是否有$v1的变量,有的话,将此变量的内存址传递函数内部的同名变量。(global相当于,向函数内部的同名变量传递了一个物理地址)在函数外部访问函数内部方法1:return方法2:使用global声明注意:global只能声明,不能赋值数据类型的转换在PHP中,有多种运算符,每一种运算的操作数据都要与运算相对就算术运算,操作的数据是,数值类型,字符串运算符,操作的数据是字符串只有要相同数据类型才能进行直接运算,否则会进行转换。1、自动转换 php在进行运算时,不是与运算符相对应的数据类型会自动转换。此种转换是系统自动完成。2、强制转换 在所需要转换的变量前使用小括号(),并且在括号中输入目标数据类型语法: (目标数据类型)$变量;目标数据类型: int或integer bool或boolean string float array object其他数据类型转换为整型其他数据类型转换为字符型其他数据类型转换为布尔型3、使用转换函数intval();stringval();floatval();GetType(); 用于获取变量的数据类型SetType(); 用于设置变量的数据类型示例:伪类型伪类型:mixed 混合数据类型 void 空 没有返回值 文件的引入PHP会将多个脚本文件所使用的到的相同的代码,会单独生成(封装)成一个脚本文件,在使用此功能代码的,脚本文件中引用,即为文件的引入。文件引入语法:方式1:requirerequire_once方式二:includeinclude_once根据引用的文件与被引入文件的逻辑上可以将引入分为前向引入: 在当前脚本中使用另一个脚本中的功能性的功能。后向引入: 当前脚本中有数据给另一个文件使用。示例:当前文件:03nxn.php文件03temp.html文件文件引入的区别require特点: 在引入文件的过程中,如果出错,那么直接结束当前脚本的执行。include经验法则: 一般require引用功能性的代码(此种功能性的代码,在逻辑上引入其后的代码,依靠于被引入文件的代码)例如:数据库的连接, 一般require会书写在第一行。 一般include用于引入模板性的文件 include多用于分支结构 如果被引入的文件发生错误,对引入文件的影响不大,那么使用includeonce的区别:没有Once的语法,每遇到一个require或include就会引入一次文件。有once的语法,只保证引入一次。示例1:03nxn.php文件示例2:引入文件的原理示例:引入文件:03demo_require.php文件被引入文件:03nxn.php运行结果说明: 首先03demo_require.php文件,require(03nxn.php)语句,并不会被执行 当03demo_reuiqre.php文件,编译后,执行时,当执行到nxn()语句时,会在内存中还没有nxn()函数,所以报错。 错误就是由引入文件与被引入文件编译不是同步的(先编译引入文件的源代码,在执
文档评论(0)