「PHP/入門/関数とは」の版間の差分
< PHP
削除された内容 追加された内容
M cat sort |
pre -> source |
||
4 行 | 4 行 | ||
例: |
例: |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
f(); |
f(); |
||
13 行 | 13 行 | ||
} |
} |
||
?> |
?> |
||
</ |
</source> |
||
関数は、このように使う。 |
関数は、このように使う。 |
||
35 行 | 35 行 | ||
関数は値を返すこともできる。 |
関数は値を返すこともできる。 |
||
例えば、 |
例えば、 |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
$num = pi(); |
$num = pi(); |
||
41 行 | 41 行 | ||
print $num; |
print $num; |
||
?> |
?> |
||
</ |
</source> |
||
pi() |
pi() |
||
47 行 | 47 行 | ||
これを参考に、単純に1を返す関数を作る。 |
これを参考に、単純に1を返す関数を作る。 |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
$a = f(); |
$a = f(); |
||
57 行 | 57 行 | ||
} |
} |
||
?> |
?> |
||
</ |
</source> |
||
関数が値を返すようにするには、return 命令を使う。 |
関数が値を返すようにするには、return 命令を使う。 |
||
70 行 | 70 行 | ||
例: |
例: |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
80 行 | 80 行 | ||
?> |
?> |
||
</ |
</source> |
||
引数は、括弧のなかへ記述する。 |
引数は、括弧のなかへ記述する。 |
||
94 行 | 94 行 | ||
このような、変数の使える範囲のことを、スコープ(Scope) と呼ぶ。 |
このような、変数の使える範囲のことを、スコープ(Scope) と呼ぶ。 |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
$i = 10; |
$i = 10; |
||
104 行 | 104 行 | ||
} |
} |
||
?> |
?> |
||
</ |
</source> |
||
このとき、f() の中に、変数 $i があり、グローバルスコープにも、変数 $i がある。 |
このとき、f() の中に、変数 $i があり、グローバルスコープにも、変数 $i がある。 |
||
113 行 | 113 行 | ||
例: |
例: |
||
<source lang=php> |
|||
<pre> |
|||
<?php |
<?php |
||
$n = 99; |
$n = 99; |
||
124 行 | 124 行 | ||
} |
} |
||
?> |
?> |
||
</ |
</source> |
||
関数 f() の一行目の global に注目してほしい。 |
関数 f() の一行目の global に注目してほしい。 |
2015年8月30日 (日) 11:14時点における版
PHPにおける関数の基本
関数とは、行いたい処理をひとまとめにして、あとでそれを簡単に実行できるようにするためのものである。
例:
<?php
f();
function f($n){
print "a<br>";
print "b<br>";
}
?>
関数は、このように使う。 関数を定義するには、functionを使い、その中に、処理をかく。 そうすれば、関数の名前を書くだけで、中の処理を行ってくれる。 (ちなみに、PHPはコードをすべてメモリに読み込んでから実行するため、関数をプログラムのどこに書いても 関数を使うことができる。)
これを実行すると、
a
b
のように表示される。
値を返す関数
関数は値を返すこともできる。 例えば、
<?php
$num = pi();
print $num;
?>
pi() は、円周率を返す関数である。 これを参考に、単純に1を返す関数を作る。
<?php
$a = f();
print $a;
function f(){
return 1;
}
?>
関数が値を返すようにするには、return 命令を使う。 その後に書いた値 (整数、実数、文字列) を返す。
これを実行すると、$a には 1が代入される。
引数をもつ関数
関数には引数を持たせることもできる。
例:
<?php
print add(10, 99);
function add($i, $j){
return $i + $j;
}
?>
引数は、括弧のなかへ記述する。
変数のスコープ
関数の外で定義した変数をグローバル変数、 関数の中で定義した変数をローカル変数と呼ぶ。
通常、グローバル変数を関数内で使用することはできない。 また、ローカル変数を関数外で使用することはできない。
このような、変数の使える範囲のことを、スコープ(Scope) と呼ぶ。
<?php
$i = 10;
print "グローバル変数{$i}";
function f(){
$i = 99;
print "ローカル変数{$i}";
}
?>
このとき、f() の中に、変数 $i があり、グローバルスコープにも、変数 $i がある。 しかし、これらは、別物である。
しかし、関数内で、グローバル変数を使用することができる。
例:
<?php
$n = 99;
f();
function f() {
global $s;
$i = $s * $s;
print "sの二乗は{$i}です。";
}
?>
関数 f() の一行目の global に注目してほしい。 こうすることにより、グローバル変数を関数内で使用することができるようになる。