3 回答

TA贡献1865条经验 获得超7个赞
试试这个:
class FruitColor {
private $fruitcolor;
function __construct($fruitcolor)
{
$this->fruitcolor = $fruitcolor;
}
public function getFruits($color)
{
$fruits = array();
if (isset($this->fruitcolor[$color])) {
$fruits = $this->fruitcolor[$color];
}
return json_encode(array("color" => $color, "fruits" => $fruits));
}
}

TA贡献1856条经验 获得超17个赞
class FruitColor{
private $fruitcolor;
public function __construct( $fruitcolor ){
$this->fruitcolor = $fruitcolor;
}
public function getFruits( $color ){
if( array_key_exists( $color, $this->fruitcolor ) ){
return json_encode( (object)array('color'=>$color, 'fruits' => $this->fruitcolor[ $color ]) );
}
return json_encode( (object)array('color'=>$color, 'fruits' => array() ) );
}
}
$arr=array(
"red" => array("apple", "strawberry"),
"yellow" => array("lemon", "ripe mango")
);
$obj=new FruitColor( $arr );
$red=$obj->getFruits( 'red' );
$yellow=$obj->getFruits( 'yellow' );
$violet=$obj->getFruits( 'violet' );
printf('<pre>%s</pre>',print_r( $red,1));
printf('<pre>%s</pre>',print_r( $yellow,1));
printf('<pre>%s</pre>',print_r( $violet,1));
将输出:
{"color":"red","fruits":["apple","strawberry"]}
{"color":"yellow","fruits":["lemon","ripe mango"]}
{"color":"violet","fruits":[]}

TA贡献1851条经验 获得超3个赞
这可能是您正在寻找的内容:
<?php
class FruitColor {
private $data;
function FruitColor($fruitcolors) {
$this->data = $fruitcolors;
}
public function getFruits($color) {
$fruits = [];
if (isset($this->data[$color]) && is_array($this->data[$color])) {
$fruits = $this->data[$color];
}
return json_encode(array("color" => $color, "fruits" => $fruits));
}
}
$fruitcolor = new FruitColor([
"red" => ["apple", "strawberry"],
"yellow" => ["lemon", "ripe mango"]
]);
var_dump($fruitcolor->getFruits("red"));
var_dump($fruitcolor->getFruits("yellow"));
var_dump($fruitcolor->getFruits("violet"));
输出显然是:
string(47) "{"color":"red","fruits":["apple","strawberry"]}"
string(50) "{"color":"yellow","fruits":["lemon","ripe mango"]}"
string(30) "{"color":"violet","fruits":[]}"
- 3 回答
- 0 关注
- 203 浏览
添加回答
举报