这是我遇到的问题,我希望能够输出这样的javascript对象
{
id : "title",
name : "Title",
field : "title",
width : 200,
cssClass : "cell-title",
editor : Slick.Editors.Text
}
请注意,编辑器:Slick.Editors.Text不在任何类型的引号中。
我可以输出这个。。。但我似乎无法让php不在Slick.Editor.Text 周围加引号
{"id":"title","name":"Title","field":"title","width":200,"cssClass":"cell-title","editor":"Slick.Editors.Text"}
这是我用来输出这个字符串的php代码。
public function creatColumn($id, $name, $field, $width, $cssClass, $editor = null) {
$obj = (object) array('id'=>$id, 'name'=>$name, 'field'=>$field, 'width'=>$width, 'cssClass'=> $cssClass, 'editor' => $editor);
return json_encode($obj);
}
有没有一种方法可以将php.json对象输出到php,而不引用字符串?
这有点麻烦,但你可以做:
public function creatColumn($id, $name, $field, $width, $cssClass, $editor = null) {
$obj = (object) array('id'=>$id, 'name'=>$name, 'field'=>$field, 'width'=>$width, 'cssClass'=> $cssClass);
$json = json_encode($obj);
return str_replace('}', '"editor":'.$editor.' }', $json);
}