1

PHPにjson_encodeがあることは知っています。現在、私たちはそれを使用しています。しかし、サーバーにアクセスする必要があるため、アプリの速度が低下するのはこれだけです。

状況は次のとおりです。2 つのアプリがあります。app1 と app2 としましょう。

App1 は大きなアプリケーションです。その入力の 1 つは php 配列です。

一方、app2 は app1 を支援するために作成された小さなアプリケーションです。App2 にはフォームがあります。フォームには多くのフィールドがあります。次に、これらのフィールドはすべて正しい php 配列形式に変換され、app1 の入力として使用できるようになります。

app2 を使用するたびに、より注意するか、フィールドを常に保持する必要があります。誤った情報を持つフィールドが 1 つある場合は、もう一度行う必要があります。 app2 を使用して正しい配列を取得します。

そのため、app2 に機能を追加する必要があると考えています。それが生成する php 配列を編集できるようにしたいと考えています。私たちはそれをしました。PHP配列が与えられたら、それをサーバーに送信し、json_encodeを使用してから、すべてを配置します。これで、すべてのフィールドにデータが入力されたので、間違ったデータでフィールドを編集できます。

現時点ではそれで問題ありませんが、サーバーに行かずにjsを使用してphp配列を変換する方が効率的だと思います... Googleとstackoverflowを検索しましたが、何も見つかりませんでした。私は .replace() を使用してみましたが、まだ良い結果が得られていません..

誰かがここで私を助けてくれることを願っています..

編集:

ところで、それはPHP配列形式です...

簡単な例として、フィールドに入力する必要があります。フィールドに入力すると、テキストエリアに PHP 配列形式が出力されます。

4

2 に答える 2

1

あなたのコメントから、テキストエリアに次のような文字列があると言っているようです:

<textarea>array('a'=>'goat', 'b' => 'dog')</textarea>​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

PHP形式の配列リテラルである文字列は言うまでもなく、最初に「コード」タイプの結果をテキストエリアに配置する理由が本当にわかりませんが、JavaScriptの使用方法に関する質問に答えようとしますこのような文字列を JS オブジェクトに変換するには、次のようにします。

// assuming your textarea has the id "myTextArea":
var str = document.getElementById("myTextArea").value,
    json = "{" + str.slice(6, -1).replace(/=>/g,":").replace(/'/g,"\"") + "}";
console.log(json);
var obj = JSON.parse(json);
console.log(obj);

デモ: http://jsfiddle.net/WknYX/

console.log()JSON 形式に操作された後に文字列がどのように見えるかを確認できるように、2 つのステートメントを挿入し、JSON が解析された後の結果のオブジェクトを確認できるようにします。

文字列が他の形式である場合、および配列内の項目に置換される文字が含まれている場合、エラーは発生しませんが、誤った結果が得られる場合、明らかにこのコードはエラーで壊れることに注意してください。

于 2012-12-02T06:57:32.690 に答える
0

以下でjson形式を変換できます

$array = array("hola","hello");
exit(json_encode($array));



output json // {"hola","hello"}

jsで

sucess(x){

}
于 2012-12-02T07:00:11.650 に答える