この記事では主に PHP での関数の宣言と使用法を紹介します。必要な方は参考にしてください。
関数
1. 関数名は識別子の 1 つであり、先頭には英数字のアンダースコアのみを含めることができます。数値を使用します。
関数名の命名は、「リトル キャメル ケース ルール」FUNC(), func(), Func();
に準拠する必要があります。FUNC(),func(),Func();
函数名不区分大小写;
函数名不能与已有函数同名,不能与内置函数名同名;
2. function_exists("func");
関数名は同じ名前にすることはできません。同じ名前の既存の関数が存在します。組み込み関数名と同じにすることはできません。
2. function_exists("func");
は次のとおりです。関数が宣言されているかどうかを検出するために使用されます。
渡される関数名は文字列形式である必要があることに注意してください。 Echo が出力される場合、true は 1、false は表示されません。ローカル変数と呼ばれる変数は関数内でのみ使用されます。関数の外で使用する必要がある場合は、関数内で return キーワードを使用する必要があります。 2. グローバル変数: 関数の外で宣言された変数はグローバル変数と呼ばれます。 3. (より一般的に使用される) 関数で使用される変数は、デフォルトでローカル変数を使用します。関数でグローバル変数を使用する必要がある場合は、global キーワードを使用してグローバル変数を導入する必要があります。関数はグローバル変数名で繰り返されます。グローバルの上には関数のローカル変数があり、グローバルの下には関数のグローバル変数があります
4.$GLOBALS[''] グローバル配列
$GLOBALS[' a3'] 配列は、PHP 配列によって提供される組み込みグローバル変数です。関数の内部または外部で宣言されたかどうかに関係なく、値を配列に直接追加できます。それらはどこでも直接使用できます。例: $GLOBALS[' a3'] =10;
5. 関数内でグローバル変数を使用する別の方法があります。パラメータにパラメータを渡すことで、関数内でグローバル変数を使用できますが、渡された後のパラメータは内部で変更される場合、ローカル変数になります。渡されたパラメータがアドレスでない限り、外部では変更されません。 function func($a1,&$a2){} func($a1,$a2);
(理由) $a1 が内部で変更される場合。 $a2 は内部変数のアドレスでもあり、関数の仮パラメータの場合、関数が呼び出されるときに、実数パラメータはリテラル量ではなく変数でなければなりません。
EG: Func ($ A1, $ A2) FUNC ($ A1, 2) エラー [静的変数]
静的変数: static キーワードを使用して宣言します。 , static $num=10;
静的変数の特徴:
静的変数は関数が初めてロードされるときに宣言されます
静的変数はすぐには解放されません。スクリプト実行プロセス全体で 1 回、同じ関数が複数回呼び出され、同じ静的変数を共有します。 spurtion通常のパラメーターの渡されます:
function fun($a){ $a+=10; return $a; } echo fun(10);e22。参照タイプのパラメーター:rreeeereferenceパラメーターの渡されて、変数は関数内で変更され、関数の外側で同期して変更されます。
仮パラメータは参照パラメータであり、実パラメータは変数のみにすることができ、リテラルにすることはできません。
3. デフォルトのパラメータ:$a=10; function func(&$a){ $a+=10; }func($b);
パラメータにデフォルトのパラメータとデフォルト以外のパラメータの両方がある場合、デフォルトのパラメータのリストはデフォルト以外のパラメータのリストの後にある必要があります。デフォルトでないことが保証される必要があります。 パラメータの割り当て順序。 _
将一个函数名,转为字符串后,赋给一个变量。这个变量,就是我们所说的变量函数,可以加()调用函数内容;
function func(){ }---->fun="func",----->func( );
[回调函数]
1.使用变量函数,自定义回调函数
function($func){func();}-->function f(){}--->func("f");
2使用call_user_func_array和call_user_func自定义回调函数;
两个函数的第一个参数,均为回调函数,表示执行当前回调;
不同点在于:call_user_func_array()第二个参数为数组,并将数组的每一个值赋给回调函数的参数列表,相当于js中的apply(); 而,call_user_func,是将回调函数的参数列表,直接展开写到第2-多个参数中,相当于js中的call();
eg:call_user_func_array("func",array(1,2,3));--->func(1,2,3);
call_user_func("func" 1,2,3);---->func(1,2,3);
[ 匿名函数]
由于变量函数在调用时存在多种调用方式,$fun()/func()所以为了让函数的调用更为统一,才产生了匿名函数。
声明匿名函数函数体后面的;必不可少!!!
匿名函数本身也是变量,用var_dump检测为object类型;
常规函数:
function func(){ $fun="func" } $fun();//func();
匿名函数:
$func=function($a){ echo "我是匿名函数{$a}<br/>"; }; //声明匿名函数函数体后面的;必不可少 $func(10); var_dump($func);
例题:计算一个数的阶层:
function jiec($num){ static $jie=1; //函数执行完不会立即释放 if($num>0){ $jie*=$num; //3 jiec(--$num); } return $jie; } echo jiec(10);
[递归函数]
指的是在函数内部,调用函数自身的操作;当外层函数体中,遇到自身函数调用,继续进入内层函数执行,而自身函数的后半部分暂不执行,知道最内层函数执行完以后,在逐步向外执行;
function func($num){ echo $num."<br/>"; if($num>0){ func($num-1); //func(--$num); 试一试又不一样的结果哟! //func($num--); } echo $num."<br/>"; }func(10);
[include/require]
1.两者的作用就是用于引入外部的PHP文件到当前文件中:include 'a.php';include ('a.php');
2.两者的区别:(对于错误的处理不同)当引入文件错误时,include会产生警告,并不影响后续代码的执行,而require会产生错误,后续代码不再执行;
3.一般当用于在文件最上方导入某些文件时,使用require导入,如果失败,则不执行文件;
如果是在某些分支条件中,导入执行某些操作,一旦报错不影响执行结果。
4.include_once和require_once表示:文件只能导入一次,如果多次调用函数,则后面的文件会判断文件是否导入,再决定是否导入新文件。
(检测文件是否导入时只关心文件是否已经导入,并不关心使用何种方式导入的。)
5.include/require可以导入各种类型的文件,相当于在当前文件copy了一份,但是copy过程中,PHP引擎会进行适当的编译,确保不会出错。
6.include和require是函数也是指令!PHP对于很多常用函数,会提供执行的写法,eg:函数写法echo("111");指令写echo "111";
相关推荐:
以上がPHP での関数宣言と使用法を図で詳しく説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

Dreamweaver Mac版
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

SublimeText3 中国語版
中国語版、とても使いやすい

ホットトピック



