.NET程序员学PHP要注意的坑-PHP函数、回调函数、自定义函数库

 

<?php
/*
 * PHP函数、变量作用域
 * 与其他语言不同的地方
 * 
 */
//函数的声明、调用:
//没什么特殊的地方,都差不多
echo GetOSName();
function GetOSName()
{                       //要使用外部全局变量,global $var声明一下
    static $s_Counter = 1;   //静态变量,只有第一次调用初始化,后续调用共享变量
    echo $s_Counter;
    $s_Counter++;
    $os = PHP_OS;
    return $os;         //return要返回多个值的话,只能用数组
}
echo GetOSName();
function TestReferenceVar(&$arg1)
{
    $arg1 += 1;
}
$arg2 = 0;
TestReferenceVar($arg2);    //引用方式传参
echo $arg2;
//默认参数
function person($name, $age, $gender="Male")    //参数顺序一样,可选参数放在右边
{
    echo "Name:".$name."Age:".$age."Gender:".$gender;
}
person("张三", 18);
//回调函数:手册中用callback描述的意为回调
//mixed funcName(callback arg)
$callback1 = 'GetOSName';       //前面定义的函数名
function callUserFunction($functionName)    //函数名作为实参传入
{
    return $functionName();     //调用传入的函数
}
echo callUserFunction($callback1);
//call_user_func_array()自定义回调函数
//1.call_user_func_array(array('类名', '静态方法名'), array('参数1', '参数..'))回调静态方法
//2.call_user_func_array(array(对象引用, '方法名'), array(参数列表))回调普通对象方法
//递归函数:与C#没啥分别
//自定义函数库:自定义的函数放在N个PHP文件中,就是自定义函数库。通过include,require加载到其他文件使用
//在文件最前面用require(), 在分支中用到时再加载用include。require_once, include_once避免重复载入。
//require加载遇到错误,程序会停止执行,include不会停止,继续执行。
//require和include不是函数,是语言结构,可不用括号:include 'xx.php'

转载于:https://my.oschina.net/SethFeng/blog/538523

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值