ホームページ  >  記事  >  バックエンド開発  >  PHP 開発 (18)-include-closure-anonymous-PhpStorm

PHP 開発 (18)-include-closure-anonymous-PhpStorm

黄舟
黄舟オリジナル
2017-03-03 09:16:221033ブラウズ

PHP 開発 (18)-include-closure-anonymous-PhpStorm

* 匿名関数 (匿名関数) はクロージャとも呼ばれ、指定された名前なしで関数を一時的に作成できます。
* コールバック関数のパラメーターとして最もよく使用される値。もちろん、他のアプリケーションもあります。
* http://php.net/manual/zh/functions.anonymous.php

* include (または require) ステートメントは、指定されたファイルに存在するすべてのテキスト/コード/タグを取得し、それらをファイルにステートメントを含めます。
* 付属のファイルは、Web サイトの複数のページで同じ PHP、HTML、またはテキストを参照する必要がある場合に役立ちます。
* http://www.w3school.com.cn/php/php_includes.asp

今日の演習には 4 つのファイルが含まれています。次のコードを参照してください: (画像は貼り付けません。印刷結果はインデックスに書き込まれます。 php は実際の効果です~)

index.php:

<?php
    /**
     * include 包含并运行指定文件。
     * include_once 在脚本执行期间包含并运行指定文件。此行为和 include 语句类似,唯一区别是如果该文件中已经被包含过,
     * 则不会再次包含。如同此语句名字暗示的那样,只会包含一次。
     *
     * include_once 因为功能强大,所以执行效率相对低。因此,推荐使用include
     *
     * require 包含并运行指定文件。
     * require_once 跟 include_once 也基本相同。
     * require 和 include 几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。
     * 换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。
     *
     * 也就是说 include 出问题报提示性警告 ,require 出问题报致命性错误 从而程序崩溃。
     *
     * 或者是说 一定包含的时候用require 不一定包含的时候用include。例:
     *  if ($a == "a"){
     *      include "ceshi.txt";
     *  }else{
     *      include "test.html";
     *  }
     *
     * 匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。
     * 最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。
     * http://www.php.cn/
     */
    include "function.inc.php";
    include "ceshi.txt"; // 打印结果:ceshiceshiceshiceshiceshiceshi
    include "test.html"; // 打印结果:testtesttesttesttesttesttesttesttesttest
    one(); // 打印结果:111
    two(); // 打印结果:222
    three(); // 打印结果:333
    echo add(10,10,20); // 这里调用的是一个包含的函数 , 打印结果:40
    echo "<br>";
    echo $jianfa(33,22); // 这里调用的是一个包含的闭包函数 , 打印结果:11
    echo "<br>";
    function callFunc($x){ // 这里调用的是一个匿名函数 , 打印结果:匿名函数
        $x("匿名函数");
    };

    callFunc(function($str){
        echo $str;
    });

function.inc.php:

<?php
    function one(){
        echo "111<br>";
    }

    function two(){
        echo "222<br>";
    }

    function three(){
        echo "333<br>";
    }

    function add($a, $b, $c){
        return $a+$b+$c;
    }

    /**
     * 闭包函数 php5.4 新特性 但是不常用 我们一般使用下面的匿名函数写法
     * 一般用于函数回调 callback
     */
    $jianfa = function ($a, $b){
        return $a-$b;
    };

    /**
     * 匿名函数
     */
    //    callFunc(function($str){
    //        echo $str;
    //    });

test.html:

testtesttesttesttesttesttesttesttesttest<br>

ceshi.txt:

ceshiceshiceshiceshiceshiceshi<br>

以上はPHP開発(18) -include-です。 Closure-anonymous -PhpStorm コンテンツ。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) にご注意ください。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。