[英]How do parameters (or arguments) work in PHP functions?
我发现了不同的函数,其中的参数似乎在起作用或表现不同
我尝试了一个具有两个参数的基本函数,这些参数被定义为函数内部的变量,但是我想了解的函数未定义函数内部的参数
例如:
function myFunction($name, $age)
{
$name = ('maj');
$age = ('31');
}
理论上(当我调用该函数时)应打印到屏幕上:
3月31日
但是这个例子呢?
function createTable($name, $query)
{
queryMysql("CREATE TABLE IF NOT EXISTS $name($query)");
echo "Table '$name' created or already exists.<br>";
}
function queryMysql($query)
{
global $connection;
$result = $connection->query($query);
if (!$result) die($connection->error);
return $result;
}
所以,这是我感到困惑的地方。 这些函数中的参数$ name和$ query定义在哪里?
参数主要是(并非总是)用于将事物传递到函数中
因此,如果您希望函数打印您赋予它的那些值,它将看起来像这样。
function myFunction($name, $age) {
echo $name;
echo ' ';
echo $age;
echo PHP_EOL;
}
// call the function and pass the paramters into it
myFunction('maj', 31);
myFunction('John', 32);
结果:
maj 31
John 32
您无需在函数内部定义这两个变量,它们仅在被添加到参数列表中时才被定义并存在于函数中。
函数是可以在程序中重复使用的语句块。 您已经定义了函数,现在需要在要执行的位置调用它们。 信息可以通过参数传递给函数,参数是逗号分隔的表达式列表。 从左到右评估参数。 以下函数具有两个参数$name, $query
因此,在createTable
函数调用时,您还需要传递这两个参数,并且这些参数在函数内部使用。
//define function
function createTable($name, $query) {
queryMysql("CREATE TABLE IF NOT EXISTS $name($query)");
echo "Table '$name' created or already exists.<br>";
}
//call the function
createTable('user', 'id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
NAME VARCHAR(30) NOT NULL');
有关更多信息,您可以参考PHP 文档 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.