设为首页 收藏本站
查看: 938|回复: 0

[经验分享] php学习笔记(四)函数相关

[复制链接]

尚未签到

发表于 2017-3-29 09:45:07 | 显示全部楼层 |阅读模式
  php函数相关

/**
* 函数
* php中只有变量是区分大小写的;
* 其他的并不区分方法名也是不区分
*
* functionfun(arg1,arg2,arg3,...){
*      ......
*      return value;
* }
*
*/
functiontable($name){
echo"$name";
echo$name;
}
table("hah");


/**
* 函数的变量作用范围
* 以及如何调用全局变量
*/
//参数定义方式
$a=100;
functionfuna(){
//这里的$a默认认为是内部的变量,与外部无关
$a=123;
echo$a;
}
functionfunb(){
//如果想用外部的可以用如下;或者使用全局数组
//如果用global声明使用全局的话,进行修改会对外部的值进行修改的
echo$GLOBALS["a"];
global$a;
echo$a;
}
funa();
funb();


/**
* 传值
* 如果参数是$a;传值
* 并且函数内直接声明了一个变量;这个变量与传进来的变量无关,只是内部的局部变量
* 如果参数是&$a;传地址
* 这样会将外部变量的地址传递过来。所以内部变量的a是外部变量了
*/
//传值
$a=100;
functionfunc($a){
//这里的$a默认认为是内部的变量,与外部无关
$a=900;
}
func($a);
echo$a;
//传地址
functionfund(&$a){
//这里的$a默认认为是内部的变量,与外部无关
$a=900;
}
fund($a);
echo$a;


/**
* 判断函数是否存在
*
* 来判断php版本中是否存在这个函数
*/
function_exists("funa");


/**
* php中实参多余形参是可以调用的fune()
* 如果实参少于形参,会提示警告(不过可以屏蔽,用@)
*
* 可以给函数符默认值如funf();
*/
functionfune($a,$b,$c){}
functionfunf($a=1,$b="ss",$c=999){}
fune(1,1,11,1,1,1,1,1);
fune();
@fune();

/**
* 函数库中带有[]的参数是可选的参数;表示无力是否传值都可以
* []的表示有默认的参数;
*
* 如果定义的函数有默认的参数,那么该参数必须放在必选参数的后面
*
* 如果想接收任意数量的参数,可以用函数func_get_args来处理
*
*/
functionfung(){
$args = func_get_args();
count($args);
for($i=0;$i<count($args);$i++){
echo$args[$i];
echo"</br>";
}
}
echo"fung()</br>";
fung(1,1,11,1,1,1,1,1);


/**
* 变量函数
* 根据传入的值获取不同的函数
*
* 系统结构的函数不可以做成变量
* echo() print() unset()isset() empty() include() require();
*/
functionfunh(){
echo"********************<br>";
echo"********************<br>";
echo"********************<br>";
echo"********************<br>";
};
functionfuni(){
echo"####################<br>";
echo"####################<br>";
echo"####################<br>";
echo"####################<br>";
};
@$a = funh;
$a = funi;
$a();

/**
* 内部函数
* 1.内部函数在主函数外无法直接调用
* 2.内部函数访问不了主函数的变量
*
*/
functiondemo($php,$java){
functionphp($php){
return"php is$php";
}
functionjava($java){
return"java is$java";
}
echophp($php);
echojava($java);
}
demo(65, 55);

/**
* 重用函数
*include("demo.php");
* include"demo.php";
*require("demo.php");
* 两者,可以调用demo.php的内部定义的函数
*
* 可以重用多次(但是demo中的函数不可以重新定义)
* 下面的函数表示如已经包含,则不再包含进来
*include_once("demo.php");
*require_once("demo.php");
*
* require:在预处理期间被导入;
* 处理失败的时候:会产生警告
* include:每次都有重新计算文件名;
* 处理失败的时候:会报错
*/
include 'repeat.php';

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-356862-1-1.html 上篇帖子: php发送503状态码 下篇帖子: PHP结合JAVA的开发技术 LAJP
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表