リモートファイルに空の配列がありますが、一時的にオブジェクトを追加したり変更したりします。ただし、オブジェクトの最初の最初のセットを追加した後、配列はこれ以上の値を受け入れません。私のエラーログはunexpected 'Object' (T_STRING), expecting ')'
を報告しています。キーワード "Object"は文字列として扱われますので、問題は配列構造から発生していると思います。ここで私は、オブジェクト最初のファイル書き込み後にオブジェクトの配列が変更されない
include 'all_users.php';
$francis_udeh = new Admin("francis_udeh");
$all_users['francis_udeh'] = $francis_udeh;
$victor_nwafor = new Member("victor_nwafor");
$all_users['victor_nwafor'] = $victor_nwafor;
$print_arr = print_r($all_users, TRUE);
$updated_arr = "<?php \n \$all_users = $print_arr; \n?>";
file_put_contents('all_users.php', $updated_arr);
を追加することで使用されるコードは、リモートファイル(ちなみに、私が欲しいものである、)
<?php
$all_users = Array
(
[francis_udeh] => Admin Object
(
[name] => francis udeh
[pagename] => francis.udeh
[can_comment] => 1
[can_view_announcements] => 1
[profile_pic] => /blog/accounts/assets/user.png
[can_delete_comment] => 1
)
[victor_nwafor] => Member Object
(
[name] => victor nwafor
[pagename] => victor.nwafor
[can_comment] => 1
[can_view_announcements] => 1
[profile_pic] => /blog/accounts/assets/user.png
)
);
?>
で次返します。私は
include 'all_users.php';
$raheem_sadiq = new Member("raheem_sadiq");
$all_users['raheem_sadiq'] = $raheem_sadiq;
$print_arr = print_r($all_users, TRUE);
$updated_arr = "<?php \n \$all_users = $print_arr; \n?>";
file_put_contents('all_users.php', $updated_arr);
をしようとすると、しかし、それは私が変更しない配列が得られ、以前の投稿エラーを返します。私は間違って何をしていますか?
私はまだまだ立ち往生しています。デコード機能が動作しません '$ json_arr = json_encode($ all_users); $ updated_arr = "<?php \ n \ $ all_users = '$ json_arr' \ n?>"; file_put_contents( 'all_users.php'、$ updated_arr); $出力= json_decode( '$ all_users'); var_dump($ output); echo json_last_error(); ' –
@Mmayboy新しいコードの問題点は何ですか?あなたがエラーメッセージを含めて出力を提供しない限り、人々があなたを助けるのは難しいです。 – Chris
また、PHPファイルを動的に作成するのは非常に珍しいことです。 JSONをファイルに書き込んだり、必要なときにそれを読み取ったりするのはなぜですか? – Chris