我想获得可以接受字符串参数并将其返回到json格式的函数。例如,如果我调用$ ballcolor-> getBall(“orange”);然后输出//应该是:{“color”:“orange”,“ball”:[“basketball”]}
如果一个电话没有任何颜色的球:{“color”:“black”,“ball”:[]}
class BallColor
{
private $ballcolor;
function BallColor($ballcolor)
{
$this->ballcolor = $ballcolor;
}
public function getBall($color)
{
return NULL;
}
}
$ballcolor = new BallColor(array(
"orange" => array("basketball"),
"white" => array("football")
));
echo $ballcolor->getBall("orange");
echo "\n";
echo $ballcolor->getBall("black");
检查它后,从$this->ballcolor
中获取所需的值,然后构建需要返回的数组,然后json_encode:
class BallColor
{
private $ballcolor;
function __construct($ballcolor)
{
$this->ballcolor = $ballcolor;
}
public function getBall($color)
{
// condensed into oneliners:
if(isset($this->ballcolor[$color])) {
return json_encode(Array("color" => $color, "ball" => $this->ballcolor[$color]));
} else {
return json_encode(Array("color" => "black", "ball" => []));
}
}
}
$ballcolor = new BallColor(array(
"orange" => array("basketball"),
"white" => array("football")
));
echo $ballcolor->getBall("orange");
echo "\n";
echo $ballcolor->getBall("black");
输出:
{"color":"orange","ball":["basketball"]}
{"color":"black","ball":[]}
你应该使用
function __construct($ballcolor)
代替
function BallColor($ballcolor)
作为构造函数,除非你的php版本是旧的。