一个基础语法的问题,关于&

一个基础语法的问题,关于&

http://img1.sycdn.imooc.com//climg/5c493d6500019e7813650753.jpg

这里的$matches 是在哪里定义的,仅仅是一个函数的形参,作用域怎么能在函数外读取出来,莫非加了&的变量就成了全局变量了?首选我知道&是引用传值,问题是作用域的问题,谢谢

正在回答

登陆购买课程后可参与讨论,去登陆

1回答

您好,preg_match函数的语法:preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 [, int $offset = 0 ]]] ):如果提供了参数matches,它将被填充为搜索结果。 

语法中参数$match可以不定义,如果同学想了解内部原理,可以查看源代码,进行研究。祝学习愉快!

  • 轩辕小齐V 提问者 #1
    不想理解源码啊,参数三在函数外直接就能使用,这与视频里老师讲的不一致啊,所以才问,这变量无需定义就能用,难道学生不该问?讲一下原理就好,这个还是形参,是我们放进去的系统怎么知道我们起什么名字,然后提前定义呢?无需源码,讲一下原理就好,不然不便理解这个函数,甚至之后的带&的变量,对不?
    2019-01-24 18:04:40
  • 好帮手慕查理 回复 提问者 轩辕小齐V #2
    您好,$match参数在外部是可以使用的,不定义也可以。使用preg_match函数时无论写的参数名称是否是$match都没关系,只要是第三个参数都是可以取到搜索结果的。这是函数内部的设定,同学只需要拿来用即可。就像你使用echo函数能够输出字符一样,函数内部进行了设置。祝学习愉快!
    2019-01-24 18:22:57
  • 轩辕小齐V 提问者 回复 好帮手慕查理 #3
    您~~发发慈悲呗,如果遇到妹子问我这个问题,我不会,让伊人远去,让生命不完整多么悲催啊~~请老师成君子之美!救学生与水火,比如这个变量在PHP系统内定义了,或者这个形参直接就能用?拜托~~
    2019-01-24 18:27:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师