Heim  >  Artikel  >  类库下载  >  Benutzerdefinierte PHP-Funktion

Benutzerdefinierte PHP-Funktion

高洛峰
高洛峰Original
2016-10-13 10:15:491502Durchsuche

Benutzerdefinierte Funktion

Funktionsdeklaration

Beim Schreiben von Programmen stoßen wir häufig auf bestimmte Funktionsmodule, die in PHP keine Systemfunktionen bereitstellen. Daher müssen wir eine Funktion definieren. Das heißt, eine benutzerdefinierte Funktion lautet wie folgt:

Die erste Zeile jeder Funktion ist der Funktionsheader, der aus drei Teilen besteht: dem Schlüsselwort function, das die Funktion deklariert, dem Funktionsnamen, und die Parameterliste.

Jede benutzerdefinierte Funktion muss mit dem Schlüsselwort function deklariert werden.

Der Funktionsname kann die gesamte Funktion darstellen, und die Funktion kann einen beliebigen Namen haben, solange sie den Benennungsregeln für Variablennamen folgt. Der Funktionsname muss jedoch eindeutig sein und darf nicht denselben Namen wie die Systemfunktion haben.

Bei der Deklaration einer Funktion sind auch die geschweiften Klammern nach dem Funktionsnamen erforderlich. Die geschweiften Klammern geben einen Satz akzeptabler Parameterlisten an. Die Parameter sind die deklarierten Variablen, und dann wird der Wert an sie übergeben Funktion aufgerufen wird. Die Parameterliste kann keinen, einen oder mehrere Parameter enthalten. Mehrere Parameter werden durch Kommas getrennt.

Der Funktionskörper befindet sich nach dem Funktionsheader und ist in geschweifte Klammern eingeschlossen. Nachdem die Funktion aufgerufen wurde, endet die Ausführung nach der Retun-Anweisung oder der äußersten geschweiften Klammer und kehrt zum aufrufenden Programm zurück.

Verwenden Sie das Schlüsselwort return, um einen Wert von einer Funktion zurückzugeben, und kehren Sie dann zum aufrufenden Programm zurück, um die Ausführung fortzusetzen.

Demo

<?php 
    /* 将使用双层for循环输出表格的代码声明为函数,函数名为table */
    function table() {                              
        echo "<table align=&#39;center&#39; border=&#39;1&#39; width=&#39;600&#39;>";           
        for($out=0; $out < 10; $out++ ) {       
            $bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色            
            echo "<tr bgcolor=".$bgcolor.">"; 
            for($in=0; $in <10; $in++) {    
                echo "<td>".($out*10+$in)."</td>";    
            }            echo "</tr>";    
        }        echo "</table>";
    } 
?>

Funktionsaufruf

Ob es sich um eine benutzerdefinierte Funktion oder eine Systemfunktion handelt, wenn die Funktion nicht aufgerufen wird, wird sie nicht ausgeführt. Nachdem die Funktion aufgerufen wurde, beginnt sie mit der Ausführung des Codes im Funktionskörper. Nach Abschluss der Ausführung kehrt sie zum aufrufenden Speicherort zurück und setzt die Ausführung abwärts fort. Die Aufrufregeln lauten wie folgt:

Rufen Sie die Funktion über den Funktionsnamen auf.

Wenn die Funktion über eine Parameterliste verfügt, können Sie den entsprechenden Wert auch über die Klammern nach dem Funktionsnamen an den Parameter übergeben und die Parameter im Funktionskörper verwenden, um das Ausführungsverhalten des internen Codes von zu ändern die Funktion.

Wenn die Funktion einen Rückgabewert hat, wird der Wert nach der Rückgabe bei Ausführung der Funktion an die Stelle zurückgegeben, an der die Funktion aufgerufen wurde.

Demo

<?php 
    /* 将使用双层for循环输出表格的代码声明为函数,函数名为table */
    function table() {                              
        echo "<table align=&#39;center&#39; border=&#39;1&#39; width=&#39;600&#39;>";           
        for($out=0; $out < 10; $out++ ) {       
            $bgcolor = $out%2 == 0 ? "red" : "blue";//各行换背景色            
            echo "<tr bgcolor=".$bgcolor.">"; 
            for($in=0; $in <10; $in++) {    
                echo "<td>".($out*10+$in)."</td>";    
            }            echo "</tr>";    
        }        echo "</table>";
    } 
?>  

Die Parameter der Funktion

Die Parameterliste besteht aus null, einem oder mehreren Parametern. Jedes Argument ist ein durch Kommas getrennter Ausdruck. Bei parametrisierten Funktionen besteht eine Datenübertragungsbeziehung zwischen dem PHP-Skriptprogramm und der aufgerufenen Funktion. Beim Definieren einer Funktion werden die Ausdrücke in Klammern nach dem Funktionsnamen als formale Parameter (als „formale Parameter“ bezeichnet) und die Ausdrücke in Klammern nach dem aufgerufenen Funktionsnamen als tatsächliche Parameter (als „aktuelle Parameter“ bezeichnet) bezeichnet. . Aktualparameter und Formalparameter Die Daten müssen der Reihe nach übertragen werden. Wenn die Funktion keine Parameterliste hat, sind die von der Funktion ausgeführten Aufgaben festgelegt und der Benutzer kann einige der internen Ausführungsverhalten der Funktion beim Aufrufen der Funktion nicht ändern.

Demo

<?php 
    /**        自定义函数table()时,声明三个参数,参数之间使用逗号分隔        @param  string  $tableName  需要一个字符串类型的表名        @param  int     $rows       需要一个整型数值设置表格的行数        @param  int     $cols       需要另一个整型值设置表格的列数    */
    function table( $tableName, $rows, $cols ) {                    
        echo "<table align=&#39;center&#39; border=&#39;1&#39; width=&#39;600&#39;>";       
        echo "<caption><h1> $tableName </h1></caption>";            
    
        for($out=0; $out < $rows; $out++ ) {    //使用第二个参数$rows指定表行数
            $bgcolor = $out%2 == 0 ? "red" : "blue";            
            echo "<tr bgcolor=".$bgcolor.">"; 

            for($in=0; $in < $cols; $in++) {    //使用第三个参数$cols指定表列数
                echo "<td>".($out*$cols+$in)."</td>";    
            }            echo "</tr>";    
        }        echo "</table>";
    } 
?>  <?php table("千度的表格",10,10);?>

Der Rückgabewert der Funktion

Der Rückgabewert der Funktion ist das Ergebnis der Funktionsausführung, die nicht direkt ausgeführt werden kann Verwenden Sie die Informationen im Funktionskörper. Daten können jedoch über das Schlüsselwort return an den Aufrufer übergeben werden. Hinweise zur Return-Anweisung lauten wie folgt:

Die Return-Anweisung kann jeden Ausführungsergebniswert im Funktionskörper an den Funktionsaufrufer zurückgeben.

Wenn die Return-Anweisung im Funktionskörper ausgeführt wird, werden die darauf folgenden Anweisungen nicht ausgeführt.

Demo

<?php 
    /**        自定义函数table()时,声明三个参数,参数之间使用逗号分隔        @param  string  $tableName  需要一个字符串类型的表名        @param  int     $rows       需要一个整型数值设置表格的行数        @param  int     $cols       需要另一个整型值设置表格的列数    */
    function table( $tableName, $rows, $cols ) {        $returnStr="这是返回的字符串";
        echo "<table align=&#39;center&#39; border=&#39;1&#39; width=&#39;600&#39;>";       
        echo "<caption><h1> $tableName </h1></caption>";            
    
        for($out=0; $out < $rows; $out++ ) {    //使用第二个参数$rows指定表行数
            $bgcolor = $out%2 == 0 ? "red" : "blue";            
            echo "<tr bgcolor=".$bgcolor.">"; 

            for($in=0; $in < $cols; $in++) {    //使用第三个参数$cols指定表列数
                echo "<td>".($out*$cols+$in)."</td>";    
            }            echo "</tr>";    
        }        echo "</table>";
        return $returnStr;
    } 
?>  <?php echo table("千度的表格",10,10);?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

In Verbindung stehende Artikel

Mehr sehen