我尝试转换stdClass的对象并在Json文件中对其进行编码,但我的数组为空:
createJson();
$array = json_encode($jsonEncode);
echo '<pre>'; print_r($array); echo '</pre>';
$fp = fopen('file.json', 'a');
fwrite($fp, $array);
fclose($fp);
unset($_POST);
function createJson(){
$jsonEncode->Nome=$_POST["firstName"];
$jsonEncode->Cognome=$_POST["lastName"];
$jsonEncode->Indirizzo=$_POST["address"];
$jsonEncode->Data_di_nascita="25/01/1977";
$jsonEncode->Username=$_POST["userName"];
$jsonEncode->Foto_profilo="percorso_foto";
$jsonEncode->Skill = array(
array("Falegnameria","Ottimo"),
array("Inglese","Ottimo"),
array("Relazioni col pubblico","Buono"),
array("Saponeria","Discreto"),
array("Caccia alla volpe","Eccellente")
);
$jsonEncode->Esperienze = array(
array("Ottobre 2001","Gennaio 2016","Falegname","Cace srl"),
array("Febbraio 2016","Gennaio 2017","Falegname","Cille snc")
);
}
当我启动Html页面并提交数据时,收到此错误: 警告:在第115行的path_to_my_file中从空值创建默认对象(“$ jsonEncode-&gt; Nome = $ _ POST [”firstName“];”) 警告:fopen(file.json):无法打开流:第105行的path_to_my_file中的权限被拒绝
警告:fwrite()要求参数1为资源,第106行的path_to_my_file中给出布尔值
警告:fclose()要求参数1为资源,第107行的path_to_my_file中给出布尔值
哪里错了?
答案 0 :(得分:0)
$array = json_encode(createJson());
echo '<pre>'; print_r($array); echo '</pre>';
$fp = fopen('file.json', 'a');
fwrite($fp, $array);
fclose($fp);
unset($_POST);
function createJson(){
$jsonEncode['Nome'] = $_POST["firstName"];
$jsonEncode['Cognome']= $_POST["lastName"];
$jsonEncode['Indirizzo']=$_POST["address"];
$jsonEncode['Data_di_nascita']="25/01/1977";
$jsonEncode['Username']=$_POST["userName"];
$jsonEncode['Foto_profilo']="percorso_foto";
$jsonEncode['Skill'] = array(
array("Falegnameria","Ottimo"),
array("Inglese","Ottimo"),
array("Relazioni col pubblico","Buono"),
array("Saponeria","Discreto"),
array("Caccia alla volpe","Eccellente")
);
$jsonEncode['Esperienze'] = array(
array("Ottobre 2001","Gennaio 2016","Falegname","Cace srl"),
array("Febbraio 2016","Gennaio 2017","Falegname","Cille snc")
);
return $jsonEncode;
}