精华内容
下载资源
问答
  • 定义一个函数非常的简单,使用 function name(args) {body} 的语法声明。不能指定参数和返回值类型,参数和返回值类型有无限种可能。这是到目前为止最常见的函数声明方式。 数组和引用类型参数值声明PHP 5) 数组...
  • PHP初学者-自己写一个次方函数

    千次阅读 2019-03-16 10:48:59
    # 声明一个函数,第一个参数作为底数,第二个作为幂 function cifang($zs,$mi){ # 先存储下底数的值,循环底数会改变 $ci = $zs; # 幂是多少,就乘多少次 for($i=1; $i<$mi; $...

    利用for循环可以做出来。
    代码:

    <?php
    echo '<h1>计算次方的函数</h1>';
    
    # 声明一个函数,第一个参数作为底数,第二个作为幂
    function cifang($zs,$mi){
        # 先存储下底数的值,在循环中底数会改变
        $ci = $zs;
        # 幂是多少,就乘多少次
        for($i=1; $i<$mi; $i++){
            # 底数等于底数乘之前存储的底数
            $zs = $zs*$ci;
        }
        # 返回值,number_format()就是可以将科学计数法转为普通数字的函数
        return $ci.'**'.$mi.'='.number_format($zs,0);
    }
    echo  cifang(2,10);
    

    输出结果:
    在这里插入图片描述
    就这样。

    可是,在php中自带次方函数,还有次方的符号
    想要了解的自行搜索php运算符

    展开全文
  • PHP函数的定义

    千次阅读 2019-04-11 14:04:17
    调用一个函数就是调用一个功能。 内置函数PHP函数中有一些内置函数,这些函数是不能随便进行更改的; strtoupper() 和 strtolower()是两个内置的函数,用于对字符串进行大小写转换。 $str = 'ABcd'; $upper = ...

    函数就是功能。封装一段用于完成特定功能的代码。调用一个函数就是在调用一个功能。

    1. 函数分类

    内置函数:

    PHP函数中有一些内置函数,这些函数是不能随便进行更改的;
    strtoupper() 和 strtolower()是两个内置的函数,用于对字符串进行大小写转换。

    $str = 'ABcd';
    $upper = strtoupper($str);		// 调用strtoupper()函数将$str转换成大写
    $lower = strtolower($str);		// 调用strtolower()函数将$str转换成小写
    echo $upper;			// 输出结果:ABCD
    echo $lower;			// 输出结果:abcd
    
    自定义函数
    function generate_table($row, $col){
    	$html = '<table>';
    	for ($i = 1; $i <= $row; ++$i) {
          	$html .= '<tr>';
               for ($j = 1; $j <= $col; ++$j){	
                   $html .= '<td></td>';
            }
             $html .= '</tr>';
    	}
       	return $html.'</table>';
    }
    echo generate_table(5,5);
    

    以上是使用自定义函数将表格生成器定义为一个函数。

    2. 函数的基本语法格式

    unction 函数名([参数1, 参数2, ……]){
        函数体……
    }
    

    function:在声明函数时必须使用的关键字
    函数名:要符合PHP的标识符,且函数名是唯一的,不区分大小写
    [参数1, 参数2…]:外界传递给函数的值,它是可选的,多个参数之间使用逗号“,”分隔。
    函数体:函数定义的主体,专门用于实现特定功能的代码段。
    返回值:需要使用return关键字将需要返回的数据传递给调用者。

    3. 参数设置

    对于函数来说,参数的不同设置,决定了其调用和使用方式。

    无参函数

    适用于不需要提供任何数据即可完成指定功能的情况。

    function shout(){
        return 'come on';
    }
    echo shout();	// 输出结果:come on
    
    按值传递函数

    这种方式定义的函数,在函数内部可以随意对用户传递的参数进行操作。

    function add($a, $b){
        $a = $a + $b;
        return $a;
    }
    echo add(5, 7);
    // 对于有参数的函数做调用时,不仅可以直接传值,还可以使用变量代替。
    $x = 5;
    $y = 7;
    echo add($x, $y);	
    
    引用传参

    如需要修改参数值,则需要通过函数参数的引用传递,在参数前面加 & 即可。

    function extra(&$str){
        $str .= ' and some extra';
    }
    $var = 'food';
    extra($var);
    // 输出结果:food and some extra
    echo $var;
    
    设置参数默认值

    函数参数在设置时,还可以为其指定默认值,也就是可选参数。当调用者未传递该参数时,函数将使用默认值进行操作。

    function say($p, $con = 'say "Hello"'){
        return "$p $con";
    }
    // 输出结果:Tom say "Hello"
    echo say('Tom');
    
    指定参数类型(弱)

    当用户调用函数时,如果传递的参数不是int类型,程序会将其强制的转换为int型后,再进行操作,这种方式称为弱类型参数设置。

    function sum1(int $a, int $b){
        return $a + $b;
    }
    echo sum1(2.6, 3.8); // 输出结果:5
    
    指定参数类型(强)

    还可以将其设置为强类型的参数,即当用户传递的参数类型不符合函数的定义,程序会报错提醒。

    declare(strict_types = 1);
    function sum2(int $a, int $b){
        return $a + $b;
    }
    echo sum2(2.6, 3.8); // 输出结果:Fatal error: ......
    

    4. 变量的作用域

    变量只有在定义后才可使用,但并不是说变量定义后就能随时使用,只有在其作用范围内才可以被使用,这个作用范围叫作用域。
    在函数内部定义的变量称为局部变量,在函数外部定义的变量称为全局变量。

    function test()
    {
        $sum = 36; 	// 局部变量
        return $sum;
    }
    $sum = 0; 	    // 全局变量
    echo test();    // 输出结果:36
    echo $sum;      // 输出结果:0
    

    默认情况下,函数中不能使用全局变量,同时局部变量的改变也不会对全局变量有任何影响。

    展开全文
  • c语言定义函数和声明函数 C语言用户定义函数的类型 (Type of User-defined Functions in C) There can be 4 different types of user-defined functions, they are: 可以有4种不同类型的用户定义函数,它们是: ...

    c语言定义函数和声明函数

    There can be 4 different types of user-defined functions, they are:

    可以有4种不同类型的用户定义函数,它们是:

    1. Function with no arguments and no return value

      没有参数也没有返回值的函数

    2. Function with no arguments and a return value

      没有参数和返回值的函数

    3. Function with arguments and no return value

      有参数且无返回值的函数

    4. Function with arguments and a return value

      带参数和返回值的函数

    Below, we will discuss about all these types, along with program examples.

    下面,我们将讨论所有这些类型以及程序示例。

    没有参数也没有返回值的函数 (Function with no arguments and no return value)

    Such functions can either be used to display information or they are completely dependent on user inputs.

    这些功能可以用于显示信息,也可以完全取决于用户输入。

    Below is an example of a function, which takes 2 numbers as input from user, and display which is the greater number.

    下面是一个函数示例,该函数以2个数字作为用户输入,并显示较大的数字。

    #include<stdio.h>
    
    void greatNum();       // function declaration
    
    int main()
    {
        greatNum();        // function call
        return 0;
    }
    
    void greatNum()        // function definition
    {
        int i, j;
        printf("Enter 2 numbers that you want to compare...");
        scanf("%d%d", &i, &j);
        if(i > j) {
            printf("The greater number is: %d", i);
        }
        else {
            printf("The greater number is: %d", j);
        }
    }

    没有参数和返回值的函数 (Function with no arguments and a return value)

    We have modified the above example to make the function greatNum() return the number which is greater amongst the 2 input numbers.

    我们修改了上面的示例,以使函数greatNum()返回2个输入数字中较大的数字。

    #include<stdio.h>
    
    int greatNum();       // function declaration
    
    int main()
    {
        int result;
        result = greatNum();        // function call
        printf("The greater number is: %d", result);
        return 0;
    }
    
    int greatNum()        // function definition
    {
        int i, j, greaterNum;
        printf("Enter 2 numbers that you want to compare...");
        scanf("%d%d", &i, &j);
        if(i > j) {
            greaterNum = i;
        }
        else {
            greaterNum = j;
        }
        // returning the result
        return greaterNum;
    }

    有参数且无返回值的函数 (Function with arguments and no return value)

    We are using the same function as example again and again, to demonstrate that to solve a problem there can be many different ways.

    我们一次又一次地使用与示例相同的功能,以说明解决问题的方法有很多种。

    This time, we have modified the above example to make the function greatNum() take two int values as arguments, but it will not be returning anything.

    这次,我们修改了上面的示例,以使函数greatNum()接受两个int值作为参数,但不会返回任何内容。

    #include<stdio.h>
    
    void greatNum(int a, int b);       // function declaration
    
    int main()
    {
        int i, j;
        printf("Enter 2 numbers that you want to compare...");
        scanf("%d%d", &i, &j);
        greatNum(i, j);        // function call
        return 0;
    }
    
    void greatNum(int x, int y)        // function definition
    {
        if(x > y) {
            printf("The greater number is: %d", x);
        }
        else {
            printf("The greater number is: %d", y);
        }
    }

    带参数和返回值的函数 (Function with arguments and a return value)

    This is the best type, as this makes the function completely independent of inputs and outputs, and only the logic is defined inside the function body.

    这是最好的类型,因为这使函数完全独立于输入和输出,并且仅在函数体内定义了逻辑。

    #include<stdio.h>
    
    int greatNum(int a, int b);       // function declaration
    
    int main()
    {
        int i, j, result;
        printf("Enter 2 numbers that you want to compare...");
        scanf("%d%d", &i, &j);
        result = greatNum(i, j); // function call
        printf("The greater number is: %d", result);
        return 0;
    }
    
    int greatNum(int x, int y)        // function definition
    {
        if(x > y) {
            return x;
        }
        else {
            return y;
        }
    }

    功能嵌套 (Nesting of Functions)

    C language also allows nesting of functions i.e to use/call one function inside another function's body. We must be careful while using nested functions, because it may lead to infinite nesting.

    C语言还允许嵌套函数,即在另一个函数体内使用/调用一个函数。 使用嵌套函数时必须小心,因为它可能导致无限嵌套。

    function1()
    {
        // function1 body here
        
        function2();
        
        // function1 body here
    }

    If function2() also has a call for function1() inside it, then in that case, it will lead to an infinite nesting. They will keep calling each other and the program will never terminate.

    如果function2()中也有对function1()的调用,则在这种情况下,它将导致无限嵌套。 他们将继续互相调用,程序将永远不会终止。

    Not able to understand? Lets consider that inside the main() function, function1() is called and its execution starts, then inside function1(), we have a call for function2(), so the control of program will go to the function2(). But as function2() also has a call to function1() in its body, it will call function1(), which will again call function2(), and this will go on for infinite times, until you forcefully exit from program execution.

    听不懂? 让我们考虑一下在main()函数内部,调用了function1()并开始执行,然后在function1()内部,我们对function2()进行了调用,因此程序的控制权将移交给function2()。 但是由于function2()在其主体中也有对function1()的调用,它将调用function1(),后者将再次调用function2(),这将持续无数次,直到您强制退出程序执行为止。

    什么是递归? (What is Recursion?)

    Recursion is a special way of nesting functions, where a function calls itself inside it. We must have certain conditions in the function to break out of the recursion, otherwise recursion will occur infinite times.

    递归是嵌套函数的一种特殊方式,其中函数在其中调用自身。 函数必须具有一定的条件才能中断递归,否则递归将无限次发生。

    function1()
    {   
        // function1 body
        function1();
        // function1 body
    }

    示例:使用递归的阶乘 (Example: Factorial of a number using Recursion)

    #include<stdio.h>
    
    int factorial(int x);       //declaring the function
    
    void main()
    {
        int a, b;
        
        printf("Enter a number...");
        scanf("%d", &a);
        b = factorial(a);       //calling the function named factorial
        printf("%d", b);
    }
    
    int factorial(int x) //defining the function
    {
        int r = 1;
        if(x == 1) 
            return 1;
        else 
            r = x*factorial(x-1);       //recursion, since the function calls itself
        
        return r;
    }

    Similarly, there are many more applications of recursion in C language. Go to the programs section, to find out more programs using recursion.

    同样,在C语言中还有许多递归应用。 进入程序部分,使用递归查找更多程序。

    翻译自: https://www.studytonight.com/c/type-of-functions-and-recursion.php

    c语言定义函数和声明函数

    展开全文
  • PHP 函数、类声明和调用

    千次阅读 2018-08-30 10:30:03
    // PHP 函数、类声明和调用 // 这是一个类 class New1{ // 这是一个方法 public function one(){ echo '调用one()方法'; } } // 调用这个类的one()方法 $obj = new New1(); // 实例化类,实例化后成为一个对象...
    <?php
    // PHP 函数、类声明和调用
    // 这是一个类
    class New1{
      // 这是一个方法
      public function one(){
        echo '调用one()方法';
      }
    }
    // 调用这个类中的one()方法
    $obj = new New1(); // 实例化类,实例化后成为一个对象object
    $obj->one(); // 指定该对象调用那个方法
    
    // 定义一个函数
    function hanshu() {
      echo "Hello world!";
    }
    
    hanshu(); // 调用函数
    
    
    
    
    

     

    展开全文
  • php7新增了函数返回类型可声明的支持,来看看。 <?php /** * Created by PhpStorm. */ function tmp_func(array $array1):int { return array_sum($array1); } function arraysSum(array ...$arrays):...
  • PHP函数参数的声明与返回值

    千次阅读 2016-03-11 11:11:12
    * 通过在函数定义时的声明函数可以由任意数目的参数。 * 传递参数给函数的方式有两种: 按值传递 和 按 引用传递。 */ //按值传递 /** * @param integer $a 按值传递 * @param integer $b 按引用传递 * @...
  • 2019PHP面试题(持续更新PHP

    千次阅读 2019-09-18 14:00:33
    2019PHP面试题(持续更新PHP 1.悲观锁和乐观锁? 乐观锁只适合只有读没有写的操作, 悲观锁适合读写操作,但是读写操作可增加CPU的缓存失效率。 2.数据库的优化 合理的设计表结构,建立搜索引擎。 读写...
  • php代码审计常见漏洞函数介绍

    千次阅读 2019-04-29 12:05:03
    intval函数特性:“直到遇上数字或正负符号才开始做转换,遇到非数字或字符串结束时(\0)结束转换”,某些应用程序里由于对intval函数特性认识不够,错误的使用导致绕过一些安全判断导致安全漏洞....
  • 声明JavaScript函数的六种方法

    千次阅读 2016-07-29 17:02:13
    一个函数一次性定义的代码块可以多次调用。JavaScript一个函数有很多元素组成,同时也受很多元素影响: 函数体的代码 函数的参数列表 接受外部变量域的变量 返回值 当函数被调用时,this指上下文 ...
  • php中函数内部调用外部变量

    万次阅读 2018-09-21 11:43:16
    php函数在使用外部变量的几种情况。 外部用global定义 函数内使用$GLOBALS数组引用 global $mytext; $mytext="外部使用global定义"; function test(){ echo $GLOBALS['mytext']."&lt;br&...
  • &lt;?php function myTest() { static $x=0; echo $x; $x++; } myTest(); myTest(); myTest(); ?&gt;
  • 变量函数和回调函数的使用次数编程非常的高,了解其如何声明定义及如何使用对我们完善数据结构非常重要
  • // php写出一个函数,参数为年份和月份,输出结果为指定月的天数 function getDays($date){ //获取天数 $days=date("t",strtotime($date)); return $days; } //2018 年11 月 $date="2018-11&...
  • 1、引用传值 ... function aaa(&$num){ // 注意,此时的参数前有 “&” 符号,是地址符号,传递的则不是参数对应的值,二是参数指向的地址了; return $num += 1; } echo $a; //18
  • 编写函数计算一个英文字符串的单词个数。 题目要求: 编写函数计算一个英文字符串的单词个数。 输入格式: 一个最长500个字母的英文字符串,不包含数字和特殊字符,但可能包含一些英文标点符号(逗号、句点、问号...
  • Java面试题大全(2020版)

    万次阅读 多人点赞 2019-11-26 11:59:06
    发现网上很多Java面试题都没有答案,所以花了...、Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environ...
  • 不论我们学习哪门编程语言,可能PHP中的默认参数放在右边这已经成为了一个不成文的规定,当然,这样做确实很大程度上让我们对函数的理解更加清晰,如果一个函数的参数里面既有含默认参数的,又有非默认参数的,那...
  • 最基本的有查询的函数中(个人习惯把查询写成一个函数方便调用)使用global声明变量,然后再给每个需要返回的值单独声明变量最后再调用(说起来都麻烦)…… 实际上可以用函数把多个数据返回为一个array数组,...
  • PHP中isset函数的用法

    千次阅读 2016-12-29 20:25:22
    定义和用法 检测变量是否已声明。 类似$_POST['index']的变量,如果不存在表单提交,就会出现:Notice:Undefined index:...的错误。
  • 全局变量的作用是整个程序,不过调用的前面要声明...PHP 全局变量在函数中使用时必须申明为全局。例如:  $a = 1; $b = 2; function Sum() {  global $a, $b;  $b = $a + $b; }  Sum(); ec
  • PHP中函数参数的声明和使用技巧,以及如何灵活使用参数来写自定义函数的技巧;
  • PHP定义函数的几种方式

    千次阅读 2017-10-12 11:05:37
    php中定义函数带参函数 function 函数名(参数1,参数2…){ } sum(实参1,实参2…); php中当参数不确定的时候 func_num_args(); 获取实参的个数 func_get_arg(); 实参的数组 function sum(){ print_r(func_...
  • 函数:将复杂的程序分解为若干模块,每个功能模块对应一个函数(过程化开发)(功能块) /* 函数的定义:  * 1. 函数一个被命名的  * 2.独立的代码段,独立的功能  * 3.它执行特定功能  * 4.并可以...
  • 默认参数:在函数声明时给参数赋值,而且此默认参数只能最后,调用时可不传递任何参数(若只有默认参数的情况下)e.g.:&lt;?php function person($age,$name = "php"){ echo "我的名字:&...
  • php在函数内使用全局变量

    千次阅读 2018-01-15 17:01:32
    在php中,如果在函数内部要使用全局变量的话,要先用global声明该变量, <?php $x=10; $y=20; function test(){ global $x,$y; //如果要在函数内使用全局变量,则必须用global声明。 $y=$x+$y; echo $y; /...
  • 小甲鱼零基础入门学习python笔记

    万次阅读 多人点赞 2019-08-14 11:06:30
    003 小插曲之变量和字符串 插曲之变量 •变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储内存,称之为变量(variable),大多数语言,都把这种行为称为“给变量赋值”或“把值存储...
  • c 语言 函数返回数组 介绍 (Introduction) In this tutorial, we are going to understand how... 本教程,我们将了解如何从C ++函数返回数组 。 C ++函数中返回数组的方法 (Methods to Return an Array...
  • 符号) //最重要就是 删除引用的变量 ,只是引用的变量访问不了,但是内容并没有销毁 在PHP 引用的意思是:不同的名字访问同一个变量内容. 变量的引用  PHP 的引用允许你用两个变量来指向同一个内容    &...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 80,246
精华内容 32,098
关键字:

在php中声明一个函数