PHP入门教程之自定义函数用法详解(创建,调用,变量,参数,返回值等)


Posted in PHP onSeptember 11, 2016

本文实例讲述了PHP自定义函数用法。分享给大家供大家参考,具体如下:

Demo1.php

<?php
  //标准函数,内置函数
  echo md5('123456');
  echo '<br/>';
  echo sha1('123456');
  echo '阅谁问君诵,水落清香浮。';
?>

Demo2.php

<?php
  //创建函数,不要跟系统的内置函数重名
  //函数有个特性,必须调用,才可以执行
  //无参数表示()里面是空的,无返回就是函数的程序里没有 return
  function functionName(){
    echo '我是一个无参数无返回的函数。';
  }
  functionName();
?>

Demo3.php

<?php
  //包含参数无返回值的函数
  //一般来说,写好的函数,就不用修改了
  //变化的一般是传入进去的参数
  function functionArea($radius){
    $area = $radius * $radius * pi();
    echo '半径为'.$radius.'的面积为:'.$area;
  }
  //调用
  functionArea(10);
?>

Demo4.php

<?php
  //包含参数,有返回值
  function functionArea($radius) {
    $area = $radius * $radius * pi ();
    return $area;
  }
  //调用
  //这样子大大提高了函数的灵活性
  //functionArea(20); 整体就得到一个值,在内存里。
  echo '半径为20的面积为:'.functionArea(20);
?>

Demo5.php

<?php
  //包含参数,有返回值
  //这个 $radius = 10,这里的10表示这个参数的默认值
  //如果调用函数没有给函数传一个参数,那么就启用默认值
  function functionArea($radius = 10) {
    $area = $radius * $radius * pi ();
    return $area;
  }
  //调用
  //这样子大大提高了函数的灵活性
  //functionArea(20); 整体就得到一个值,在内存里。
  echo '半径为20的面积为:'.functionArea();
?>

Demo6.php

<?php
  //写一个函数,这里函数要返回三条数据
  function functionInfo($name,$age,$job){
    //$userInfo 是个数组
    //$userInfo = array($name,$age,$job);
    $userInfo[] = $name;
    $userInfo[] = $age;
    $userInfo[] = $job;
    return $userInfo;
  }
  //调用函数
  print_r(functionInfo('一站式做网站',19,'程序员'));
// $arr = functionInfo('一站式做网站',19,'程序员');
// echo $arr[0];
// list($name,$age,$job) = functionInfo('一站式做网站',19,'程序员');
// echo $name.'今年'.$age.'岁了,他还是个'.$job;
?>

Demo7.php

<?php
  //之前的传参,都是按值传参
  $prices = 50;
  $tax = 0.5;
  //这个函数没有任何值出来,目前是按值传参
  //函数里的变量和函数外变量没有任何关系
  function functionPrices(&$prices,&$tax){
    //里面的 $prices 这个变量已经是75
    $prices = $prices + $prices * $tax;
    $tax = $tax * $tax;
    echo $prices;//75
    echo '<br/>';
    echo $tax;//0.25
    echo '<br/>';
  }
  functionPrices($prices,$tax)  ;
  //引用这个概念,我们目前无法掌握,会在OOP时候,重点讲解
  echo $prices;//按值传50,按引用就变成75
  echo '<br/>';
  echo $tax;
?>

Demo8.php

<?php
  //了解全局变量
  //可以将 $a 设置成全局变量
  $a = 5;
  function fa(){
    global $a; //将 $a 设置成为全局变量
    $a = 2;
  }
  fa();
  echo $a;  //2
?>

Demo9.php

<?php
  //使用超级全局变量
  $GLOBALS['a'] = 5;
  function fa(){
    $GLOBALS['a'] = 2;
  }
  fa();
  //echo $GLOBALS['a'] ;
  print_r($GLOBALS['a'] );
?>

Demo10.php

<?php
  //这句话把函数给包含进来
  include 'library/tool.library.php';
  echo functionPi();
?>

Demo11.php

<?php
  //include() 语句包含并运行指定文件。
// include 'Demo1.php';
// include 'Demo1.php';
  //include_once() 语句在脚本执行期间包含并运行指定文件。
  //此行为和 include() 语句类似,唯一区别是如果该文件中的代码已经被包含了,则不会再次包含。
// include_once 'Demo1.php';
// include_once 'Demo1.php';  //只包含引用的文件一次
  //include 如果不存在,就告诉你两个警告,然后继续执行
  //require 如果不存放,就直接报错,然后就停止执行
  require 'Demo1.php';
  //我们就推荐使用 require
// require 'Demo1.php';
// require_once 'Demo1.php';
// require_once 'Demo1.php';
  echo '<strong>阅谁问君诵,水落清香浮。</strong>'
?>

Demo12.php

<?php
  //__FILE__
  //魔法常量 -- 这里的常量说白了就是一个值而已
// $file = __FILE__ ; //C:\AppServ\www\Basic7\Demo12.php
// echo $file;
  //所以,一般包含文件的时候,建议采用 __FILE__ 这样速度更快
  echo dirname(__FILE__);//C:\AppServ\www\Basic7
  require (dirname(__FILE__).'\Demo1.php');//C:\AppServ\www\Basic7
  echo __LINE__;
  function ffff(){
    return __FUNCTION__;
  }
  echo '<hr/>';
  echo ffff();
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
用Apache反向代理设置对外的WWW和文件服务器
Oct 09 PHP
php访问查询mysql数据的三种方法
Oct 09 PHP
php AJAX实例根据邮编自动完成地址信息
Nov 23 PHP
php实现两个数组相加的方法
Feb 17 PHP
php限制上传文件类型并保存上传文件的方法
Mar 13 PHP
php对二维数组进行相关操作(排序、转换、去空白等)
Nov 04 PHP
老司机传授Ubuntu下Apache+PHP+MySQL环境搭建攻略
Mar 20 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
Oct 21 PHP
PHP实现创建一个RPC服务操作示例
Feb 23 PHP
gearman中任务的优先级和返回状态实例分析
Feb 27 PHP
YII2 全局异常处理深入讲解
Mar 24 PHP
PHP 技巧 * SVG 保存为图片(分享图生成)
Apr 02 PHP
PHP目录与文件操作技巧总结(创建,删除,遍历,读写,修改等)
Sep 11 #PHP
PHP入门教程之数组用法汇总(创建,删除,遍历,排序等)
Sep 11 #PHP
PHP入门教程之数学运算技巧总结
Sep 11 #PHP
PHP入门教程之操作符与控制结构流程详解
Sep 09 #PHP
PHP基本语法实例总结
Sep 09 #PHP
php入门教程之Zend Studio设置与开发实例
Sep 09 #PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
Sep 09 #PHP
You might like
PHP读取RSS(Feed)简单实例
2014/06/12 PHP
PHP中Session可能会引起并发问题
2015/06/26 PHP
ThinkPHP路由详解
2015/07/27 PHP
phpcms的分类名称和类别名称的调用
2017/01/05 PHP
CentOS系统中PHP安装扩展的方式汇总
2017/04/09 PHP
理清PHP在Linxu下执行时的文件权限方法
2017/06/07 PHP
phpstudy后门rce批量利用脚本的实现
2019/12/12 PHP
如何用javascript控制上传文件的大小
2006/10/26 Javascript
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象
2010/04/27 Javascript
JS中Iframe之间传值的方法
2013/03/11 Javascript
json数据处理技巧(字段带空格、增加字段、排序等等)
2013/06/14 Javascript
鼠标滑过出现预览的大图提示效果
2014/02/26 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
Jquery与Bootstrap实现后台管理页面增删改查功能示例
2017/01/22 Javascript
Vue框架中正确引入JS库的方法介绍
2017/07/30 Javascript
javascript移动端 电子书 翻页效果实现代码
2019/09/07 Javascript
vue element el-transfer增加拖拽功能
2021/01/15 Vue.js
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
[01:05:07]DOTA2-DPC中国联赛 正赛 DLG vs Dragon BO3 第一场2月1日
2021/03/11 DOTA
Python中lambda的用法及其与def的区别解析
2014/07/28 Python
Python中os.path用法分析
2015/01/15 Python
Python socket编程实例详解
2015/05/27 Python
利用python微信库itchat实现微信自动回复功能
2017/05/18 Python
python实现数据写入excel表格
2018/03/25 Python
python 读取目录下csv文件并绘制曲线v111的方法
2018/07/06 Python
python取数作为临时极大值(极小值)的方法
2018/10/15 Python
Python爬虫爬取糗事百科段子实例分享
2020/07/31 Python
Python监听剪切板实现方法代码实例
2020/11/11 Python
css3 中实现炫酷的loading效果
2019/04/26 HTML / CSS
linux面试题参考答案(11)
2016/11/26 面试题
毕业生求职简历中的自我评价
2013/10/18 职场文书
高中生个性发展自我评价
2015/03/09 职场文书
2015年学校消防安全工作总结
2015/10/14 职场文书
Python利用Turtle绘制哆啦A梦和小猪佩奇
2022/04/04 Python
《吸血鬼幸存者》新内容发布 追加多个全新模式
2022/04/07 其他游戏