Maison > développement back-end > tutoriel php > Explication détaillée du nombre arbitraire de paramètres et exemples de fichiers de recherche de la fonction PHP

Explication détaillée du nombre arbitraire de paramètres et exemples de fichiers de recherche de la fonction PHP

伊谢尔伦
Libérer: 2023-03-12 06:00:01
original
1625 Les gens l'ont consulté

1. N'importe quel nombre de paramètres pour la fonction PHP

Vous savez peut-être que PHP vous permet de définir une fonction avec des paramètres par défaut. Mais vous ne savez peut-être pas que PHP vous permet également de définir une fonction avec des paramètres complètement arbitraires
Voici un exemple vous montrant une fonction avec des paramètres par défaut :

// 两个默认参数的函数
function foo($arg1 = '', $arg2 = '') {
echo "arg1: $arg1\n";
echo "arg2: $arg2\n";
}
foo('hello','world');
/* 输出:
arg1: hello
arg2: world
*/
foo();
/* 输出:
arg1:
arg2:
*/
Copier après la connexion

Jetons maintenant un œil à une fonction avec des paramètres variables, utilisez la méthode func_get_args() :

// 是的,形参列表为空
function foo() {
// 取得所有的传入参数的数组
$args = func_get_args();
foreach ($args as $k => $v) {
echo "arg".($k+1).": $v\n";
}
}
foo();
/* 什么也不会输出 */
foo('hello');
/* 输出
arg1: hello
*/
foo('hello', 'world', 'again');
/* 输出
arg1: hello
arg2: world
arg3: again
*/
Copier après la connexion

2. Glob() Rechercher des fichiers
De nombreuses fonctions PHP ont une auto-définition relativement longue. Le nom de la fonction est expliqué. , mais lorsque vous voyez glob(), vous ne savez peut-être pas à quoi sert cette fonction à moins que vous ne la connaissiez déjà.
Pouvez-vous considérer cette fonction comme bonne ? scandir() est la même, elle peut être utilisée pour rechercher des fichiers.

// 取得所有的后缀为PHP的文件
$files = glob('*.php');
print_r($files);
/* 输出:
Array
(
[0] => phptest.php
[1] => pi.php
[2] => post_output.php
[3] => test.php
)
*/
Copier après la connexion

Vous pouvez également rechercher plusieurs suffixes

// 取PHP文件和TXT文件
$files = glob('*.{php,txt}', GLOB_BRACE);
print_r($files);
/* 输出:
Array
(
[0] => phptest.php
[1] => pi.php
[2] => post_output.php
[3] => test.php
[4] => log.txt
[5] => test.txt
)
*/
Copier après la connexion

Vous pouvez également ajouter le chemin :

$files = glob('../images/a*.jpg');
print_r($files);
/* 输出:
Array
(
[0] => ../images/apple.jpg
[1] => ../images/art.jpg
)
*/
Copier après la connexion

Si vous souhaitez obtenir le chemin absolu , vous pouvez appeler la fonction ?realpath() :

$files = glob('../images/a*.jpg');
// applies the function to each array element
$files = array_map('realpath',$files);
print_r($files);
/* output looks like:
Array
(
[0] => C:\wamp\www\images\apple.jpg
[1] => C:\wamp\www\images\art.jpg
)
*/
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal