json をその形式に再エンコードする際に問題が発生しています。私が達成しようとしているのは、.json ファイルのアップロードで、特定の基準を満たすように変更することです。
問題は、ファイルの画像 src を変更して json にエンコードしようとすると、foreach ループの配列が正しく出力され、コンテンツなしで新しいファイルが生成されることです!
この件で少しでもお役に立てたら幸いです
function prepareImages($file,$url,$article)
{
$string = file_get_contents($file);
$json = json_decode($string,true);
$value = array();
//$array = $json['elements'];
//$imgArray = array();
/* if(['type'] == "image")
{
array_push($json['elements']['src'],$array);
} */
foreach($json['elements'] as $value)
{
if($value['type'] == "image")
{
$arr = explode('\\', $value['src']);
$count = count($arr);
$img = $arr[$count-1];
$src = $url.'res/'.$article.'/'.$img;
$value['src'] = $src;
//print_r($json);
}
//This prints all the values correctly
print_r($value);
}
$json = $value;
$string = json_encode($json);
file_put_contents($file,$string);
}