当前位置: 首页 > news >正文

网站建设详细讲解 狐灵网址地址查询

网站建设详细讲解 狐灵,网址地址查询,重庆seo推广公司,wordpress 酒店模板PHP 支持两种参数传递方式#xff0c;分别是按值传递(默认)和按引用传递。另外#xff0c;PHP 还支持默认参数和可变长度参数列表。参数传递方式在调用函数时需要向函数传递参数#xff0c;被传入的参数称作实参#xff0c;而函数定义的参数为形参。PHP 中函数参数传递有 2…PHP 支持两种参数传递方式分别是按值传递(默认)和按引用传递。另外PHP 还支持默认参数和可变长度参数列表。参数传递方式在调用函数时需要向函数传递参数被传入的参数称作实参而函数定义的参数为形参。PHP 中函数参数传递有 2 种方式按值传递和通过引用传递。按值传递按值传递的参数相当于在函数内部有这个参数的备份即使在函数内部改变参数的值也并不会改变函数外部的值示例如下function test($a){$a $a 1;return $a;}$a 1;echo test($a);test(2);echo $a;?执行以上代码的结果为2 3 1通过引用传递参数如果希望允许函数修改它的参数值就必须通过引用传递参数。这样我们在函数内部是对这个参数本身进行操作。示例如下function test($a){$a $a 1;return $a;}$x 1;echo test($x);echo $x;?当调用一次 test() 函数后$x 的值被改变执行以上代码的运行结果为2 2注意以下这种情况 PHP 会报错function test($a){$a $a 1;return $a;}test(2); //引用传递的参数必须是一个变量?执行以上代码会报错“Fatal errorOnly variables can be passed by reference”。默认参数PHP 支持函数默认参数允许使用数字、字符串、数组、NULL 等作为默认参数。默认参数的值必须是常量表达式不能是诸如变量、类成员或者函数调用等。默认参数示例如下function test($arrarray(lily,andy,ricky), $strapple){echo I am $arr[1],I love $str ;}$names [sily,celon,tom];$fruit orange;test();test($names,$fruit);?执行以上代码的结果为I am andy,I love appleI am celon,I love orange为了避免出现意外情况一般将默认参数放在非默认参数的右侧。下面是一个反面教材function?makeyogurt($typeacidophilus, $flavour){return Making a bowl of $type? flavour.\n;}echo makeyogurt(raspberry);?报错信息Warning: Missing argument 2 for makeyogurt(), called in /Library/WebServer/Documents/book/str.php on line 284 and defined in /Library/WebServer/Documents/book/str.php on line 279Making a bowl of raspberry .若将$typeacidophilus放在参数的最右侧则不会报错。参数类型声明在 PHP 5 中已引入函数的参数类型声明如果给定的值不是一个合法的参数类型那么在 PHP 5 中会出现一个 Fatal error在 PHP 7 中则会抛出一个 TypeError exception。在 PHP 7 中增加了参数可声明的类型种类。PHP 中函数可声明的参数类型如表所示。参数声明类型类型说明PHP 版本class/interface name(类接口)参数必须是指定类或接口的实例PHP 5.0.0Array参数为数组类型PHP 5.1.0Callable参数为有效的回调类型PHP 5.4.0Bool参数为布尔型PHP 7.0.0Float参数为浮点型PHP 7.0.0Int参数为整型PHP 7.0.0String参数为字符串PHP 7.0.0class/interface name(类接口)参数必须是指定类或接口的实例PHP 5.0.0Array参数为数组类型PHP 5.1.0指定参数类型为 class 类型的实例如下class C{}class D extends C{} //类D继承自类Cclass E{}functionf(C$c){echo?get_class($c).\n;}f(new C);f(new D);f(new E);?执行以上程序的结果是C DFatal error: Uncaught TypeError: Argument 1 passed to f() must be an instance of C, instance of E given, called in /Library/WebServer/Documents/book/str.php on line 293 and defined in /Library/WebServer/Documents/book/str.php:287 Stack trace: #0 /Library/WebServer/Documents/book/str.php(293): f(Object(E)) #1 {main} thrown in /Library/WebServer/Documents/book/str.php on line 287默认情况下当传递的参数不是函数指定的参数类型时PHP 会尝试将所传参数转换成指定参数类型。例如一个函数希望得到一个字符串类型的参数但假如给其提供的是一个整型参数PHP 就会自动将其转换成字符串类型或者一个函数希望得到一个整型参数但却给它传递了一个浮点型的参数。示例如下function test(int $a,string $b,string $c){echo ($a $b);echo the string is $c;}test(3.8,2,hello);?执行以上代码的打印结果为5 the string is hello注意在将浮点型转成整型时只取其中的整数部分。在 PHP 7 中可以使用 declare(strict_types1) 设置严格模式这样只有在传递的参数与函数期望得到的参数类型一致时才能正确执行否则会抛出错误。只有一种情况例外就是当函数期望得到的是一个浮点型数据而提供的是整型时函数也能正常被调用。请看如下示例declare(strict_types1);function test(int $a,int $b,string $c){echo ($a $b);echo the string is $c;}test(3.8,2,hello);?此处 declare 声明了 PHP 为严格模式而传入的参数与函数期望得到的参数类型不一致所以会报错如下所示Fatal error: Uncaught TypeError: Argument 1 passed to test() must be of the type integer, float given, called in /Library/WebServer/Documents/book/str.php on line 285 and defined in /Library/WebServer/Documents/book/str.php:281 Stack trace: #0 /Library/WebServer/Documents/book/str.php(285): test(3.8, 2, hello) #1 {main} thrown in /Library/WebServer/Documents/book/str.php on line 281可变参数在 PHP 5.6 及以后的版本中参数可包含…来表示函数可接受一个可变数量的参数可变参数将会被当作一个数组传递给函数。示例如下function test(...$num){$acc 0;foreach ($num as $key $value) {$acc $value;}return $acc;}echo test(1,2,3,4);?给 test() 函数传递的参数 1234 在函数内部将会被当作数组处理运行以上代码的结果为10
http://www.zqtcl.cn/news/860792/

相关文章:

  • 网站开发花费如何制作个人网页兼职
  • 网站鼠标特效用户体验最好的网站
  • 网站设计步骤图南通网站建设公司
  • 做盗版系统网站会不会开发次元世界
  • 下载爱南宁官方网站手机app开发软件有哪些
  • 云浮网站设计不收费的企业查询网站
  • 网站栏目怎么做iis网站筛选器被挂马
  • 网站开发中遇到的主要问题品牌营销策略包括哪些内容
  • 网站制作易捷网络十大社区团购平台有哪些
  • 哈尔滨口碑好的建站公司做网站制作一般多少钱
  • 河南网站网站制作华为品牌vi设计
  • 网站设置默认主页甘肃省第八建设集团公司网站
  • 自己做网站美工关键词优化排名网站
  • 淄博手机网站建设报价商业网站地方频道
  • 小说网站开发业务逻辑php 网站
  • 专业的做网站动态个人网站模板
  • 设计师网站设计网站开发试题库
  • 做网站是用c 吗东莞网络推广优化
  • 外贸soho网站建设wordpress配置搜索引擎优化
  • 嘉兴网站公司安卓优化大师2023
  • 电影网站开发影院座位问题正能量网站大全
  • dede手机网站更新成安专业做网站
  • 做能支付的网站贵吗品牌策划费用
  • 营销网站开发网站建设工作室
  • 如何把自己做的网站挂网上网页版梦幻西游红色伙伴搭配
  • 网站正在建设中 倒计时软件开发培训机构找极客时间
  • 贵阳网站建设搜q479185700大学网站栏目建设
  • 开发网站找什么公司吗电影网站域名
  • 网站栏目设计怎么写黑龙江建设网官
  • 网站主页设计素材php企业门户网站模板