PHPを長年使っていても、今まで知らなかった関数や機能に出会うことがあります。それらの中には、非常に便利ですが、十分に活用されていないものもあります。誰もがマニュアルや機能リファレンスのページを最初から最後まで読むわけではありません。
1. 任意の数のパラメーターを持つ関数
PHP ではオプションのパラメーターを持つ関数を定義できることはすでにご存じかもしれません。ただし、任意の数の関数引数を完全に許可するメソッドもあります。以下は、オプションのパラメーターの例です。
は引用されたコンテンツです。
";
echo "arg2: $arg2
";
}
foo(hello,world);
/* prints:
arg1: hello
arg2: world
*/
foo();
/* prints:
arg1:
arg2:
*/
今任意の数の引数を受け入れることができる関数を作成する方法を見てみましょう。今回は func_get_args() 関数を使用します:
以下は引用の内容です:
// はい、引数リストは空でも構いません
function foo() {
渡されたすべての引数の配列を返します
$ args = func_get_args ();
";
}
}
foo();
/* 何も出力しません */
foo(hello);
/* prints
arg1: hello
*/
foo(hello, world, again);
/* を出力します
arg1: hello
arg2: world
arg3: again
*/
2. Glob() を使用してファイルを検索する
多くの PHP 関数には長い説明的な名前が付いていますが、glob() 関数で何ができるのかを区別するのは難しい場合があります。何度も使用して慣れている場合を除き、特定のパターンに従ってファイルを検索できる scandir() 関数のより強力なバージョンと考えてください
以下は引用内容です:
/ / すべての php ファイルを取得します
$files = glob(*.php);
print_r($files);
/* 出力は次のようになります:
Array
(
[0] => phptest.php
[1] => ; pi .php
[2] => post_output.php
[3] => test.php
)
*/
以下は引用された内容です:すべての php ファイルと txt ファイルを取得します
$files = glob(*.{php,txt}, GLOB_BRACE);
print_r($files);
/* 出力は次のようになります:
Array
(
[0] => phptest .php
[1] => pi.php
[2] => test.php
[5] => .txt
)
*/
これらのファイルは、クエリ条件に応じて実際にパスを返すことができることに注意してください:
以下は引用された内容です:
$files = glob(../images/a*.jpg) ;
print_r($files);
/* 出力は次のようになります:
Array
(
[0] => ../images/apple.jpg
[1] => ../images/art.jpg
)
*/
各ファイルのフルパスを取得したい場合は、realpath() 関数を呼び出すことができます:
以下は引用された内容です:
$files = glob(../images/a*.jpg );
// 関数を各配列要素に適用します
$files = array_map(realpath,$files);
print_r($files);
/* 出力は次のようになります:
Array
(
[0] => C: wampwwwimagesapple.jpg
[1] => C:wampwwwimagesart.jpg
)
*/
http://www.bkjia.com/PHPjc/486246.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/486246.html
技術記事