函数和自定义函数

标准函数

标准函数为系统内置函数,PHP发行包中有1000多种内置函数。我们常用的:echo、MD5、print_r…等等.

自定义函数

创建函数,function()

<?php
    function functionName(){
    echo '这是一个无参数无返回的自定函数';
    //无参数表示函数名括号内是空的,无返回指函数程序里没有`return`
}
?>

函数不能直接使用,需要进行调用才能执行。

调用函数:

<?php
    functionName();
?>

函数名命名:

1、不能和已有函数名重名;
2、只能包含字母、数字和下划线;
3、函数名不能以数字开头。

包含参数无返回的函数及调用:

<?php
    function functionArea($radius){
    $area = $radius*$radius*pi();
    echo $area;
}

functionArea(10);
?>

包含参数有返回的函数及调用(以后会常用):

<?php
    function functionArea($radius){
    $area = $radius*$radius*pi();
    return $area;
}
//调用
//这样大大提高了函数的灵活性
//functionArea(20);整体就得到一个值在内存里。

echo functionArea(10);//这样也行
echo 'r为20的面积为:'.functionArea(20);//这样也可以,调用的时候想怎么调用都行,函数方法固定不需要触碰。
?>

包含参数有返回的函数调用:使用return()语句可以向函数调用者返回任意确定值,将程序控制权返回到调用者作用域。

包含默认参数的函数调用:可以为输入参数指定默认值,在没有提供其他值的情况下,就会把这个默认值自动赋给该参数。

<?php
    function functionArea($radius=10){
    $area = $radius*$radius*pi();
    return $area;

    echo '面积为:'.functionArea(20);
}

//这个$radius=10,这里的10表示参数的默认值
//而调用的时候传参是20,所以20会覆盖10,最终输出的结果是20的结果而不是10。

返回多个值的函数调用:

<?php
    function functionInfo($name,$age,$job){
        $userinfo = array($name,$age,$job);//追加的方式,较常用
        return $userinfo;
}
//调用
//`list()`函数把数组的值赋给相应的变量
//函数内的变量和函数外的变量没有任何关联,所以重名也没关系
list($name,$age,$job) = functionInfo('张三','25','PHP');
echo $name.'今年'.$age.'岁了,目前是个'.$job;
?>

注意:函数调用是不区分大小写的。

创建自己的函数库
通常将函数集文件放在library文件夹里,然后通过文件调用即可。文件名约定促成可以取名为tool.library.phptool可以根据情况来设定,后面两个照抄。

文件包含

通常把功能组件隔离为单独的文件,然后在需要时重新组装,PHP提供四种在应用程序中包含文件的语句:
include():将在其被调用的位置判断并包含一个文件。包含一个文件,与在该语句所在位置复制该文件的数据具有相同的结果。

include_once():作用与include()同,不过它会首先验证是否已经包含了该文件,如果包含了该文件则不再执行include_once()

require():很大程度与include()相同。都是将一个模板文件包含到require()调用所在的位置。

require_once():作用与require()相同, 不过require_once()函数确保文件只包含一次。

魔法常量

__FILE__:当前文件名
__LINE__:当前行号
__FUNCTION__:当前函数名
__CLASS__:当前类名
__METHOD__:当前方法名

这里的常量其实一个 值,并非define

$file = __FILE__;
echo $file;

一般包含文件的时候,建议采用__FILE__这样速度回更快.如:

//dirname是取得文件路径,去掉文件名,常量不需要写引号。
echo dirname(__FILE__).'test.php';

或者:

//首先找到文件和所在路径,然后将其包含进来。
require(dirname(__FILE__).'test.php');
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值