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 相关文章推荐
如何利用php+mysql保存和输出文件
Oct 09 PHP
vBulletin HACK----关于排版的两个HACK
Oct 09 PHP
PHP 创建文件(文件夹)以及目录操作代码
Mar 04 PHP
探讨:如何编写PHP扩展
Jun 13 PHP
php用户注册时常用的检验函数实例总结
Dec 22 PHP
php查询mssql出现乱码的解决方法
Dec 29 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
PHP中array_keys和array_unique函数源码的分析
Feb 26 PHP
Laravel与CI框架中截取字符串函数
May 08 PHP
php基于openssl的rsa加密解密示例
Jul 11 PHP
Yii框架学习笔记之session与cookie简单操作示例
Apr 30 PHP
Yii Framework框架开发微信公众平台示例
Apr 26 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来检测proxy
2006/10/09 PHP
php实现RSA加密类实例
2015/03/26 PHP
php实现在服务器端调整图片大小的方法
2015/06/16 PHP
PHP页面间传递值和保持值的方法
2016/08/24 PHP
PHP实现QQ快速登录的方法
2016/09/28 PHP
php有效防止图片盗用、盗链的两种方法
2016/11/01 PHP
Yii1.1中通过Sql查询进行的分页操作方法
2017/03/16 PHP
jquery.alert 弹出式复选框实现代码
2009/06/15 Javascript
AngularJS基础知识
2014/12/21 Javascript
js实现跟随鼠标移动且带关闭功能的图片广告实例
2015/02/26 Javascript
JS实现的网页倒计时数字时钟效果
2015/03/02 Javascript
JS实现滑动菜单效果代码(包括Tab,选项卡,横向等效果)
2015/09/24 Javascript
防止重复发送 Ajax 请求
2017/02/15 Javascript
JS拉起或下载app的实现代码
2017/02/22 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
2017/03/01 Javascript
vue实现微信分享功能
2018/11/28 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
JQuery 实现文件下载的常用方法分析
2019/10/29 jQuery
Vue用mixin合并重复代码的实现
2020/11/27 Vue.js
Python的组合模式与责任链模式编程示例
2016/02/02 Python
Python的包管理器pip更换软件源的方法详解
2016/06/20 Python
Python将列表数据写入文件(txt, csv,excel)
2019/04/03 Python
Django中使用 Closure Table 储存无限分级数据
2019/06/06 Python
python实现键盘输入的实操方法
2019/07/16 Python
django基础学习之send_mail功能
2019/08/07 Python
django 取消csrf限制的实例
2020/03/13 Python
python中Array和DataFrame相互转换的实例讲解
2021/02/03 Python
HTML5 audio标签使用js进行播放控制实例
2015/04/24 HTML / CSS
美国知名平价彩妆品牌:e.l.f. Cosmetics
2017/11/20 全球购物
Office DEPOT法国官网:欧迪办公用品采购
2018/01/03 全球购物
澳大利亚美容产品及化妆品在线:Activeskin
2020/06/03 全球购物
运动会加油稿100字
2014/09/19 职场文书
政府领导干部个人对照检查材料思想汇报
2014/09/24 职场文书
向国旗敬礼活动总结范文2014
2014/09/27 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
公司开业主持词
2015/07/02 职场文书