我需要使用来自给定函数的相同变量,在其他不同的函数中,但是每个函数的部分变量值都不同。
在下面的示例中,我想使用一些图像参数,如“width”,“height”和“alt”,以便在不同函数中使用的每个图像具有不同的参数。这就是我的意思(伪代码):
function my_image_with_parameters() {
if first_function() { // pseudo if statement
$width = '350';
$height = '165';
$alt = 'Some alt';
} elseif second_function() { // pseudo elseif statement
$width = '600';
$height = '400';
$alt = 'Another alt';
}
return '<img src="http://someurl.com/image.png" width="' .$width . '" height="' .$height . '" alt="' .$alt . '" />';
}
function first_function() {
echo my_image_with_parameters();
}
function second_function() {
echo my_image_with_parameters();
}
答案 0 :(得分:1)
为什么不尝试这样的事情?
function my_image_with_parameters($size = 'small') {
if ($size == 'small') {
$width = '350';
$height = '165';
$alt = 'Small image';
} elseif ($size == 'big') {
$width = '600';
$height = '400';
$alt = 'Big image';
}
return '<img src="http://someurl.com/image.png" width="' .$width . '" height="' .$height . '" alt="' .$alt . '" />';
}
echo my_image_with_parameters('small');
echo my_image_with_parameters('big');
答案 1 :(得分:1)
你想:
function my_image_with_parameters($width, $height, $alt)
{
return '<img src="http://someurl.com/image.png" width="' .$width . '" height="' .$height . '" alt="' .$alt . '" />';
}
my_image_with_parameters(350, 165, 'alt');
my_image_with_parameters(600, 400, 'other alt');
函数可以带参数。调用函数时传递参数。参数可以随每个函数调用而变化。
答案 2 :(得分:1)
这是课程的用途。您可以在类中定义一些变量,然后该类的每个实例在变量中都可以具有不同的值。例如:
class MyClass {
public $width;
public $height;
public $alt;
public function __construct($width, $height, $alt) {
$this->width = $width;
$this->height = $height;
$this->alt = $alt;
}
public function returnImage() {
return '<img src="http://someurl.com/image.png" width="' .$this->width . '" height="' .$this->height . '" alt="' .$this->alt . '" />';
}
}
$firstClass = new MyClass('350', '165', 'Some alt');
echo $firstClass->returnImage();
$secondClass = new MyClass('600', '400', 'Another alt');
echo $secondClass->returnImage();