ホームページ バックエンド開発 PHPの問題 PHP配列をJS配列に変換する方法

PHP配列をJS配列に変換する方法

Apr 26, 2023 am 09:06 AM

PHP と JavaScript はどちらも、Web ページ データの処理と対話型表示に一般的に使用される Web プログラミング言語です。 2 つの言語間でデータを受け渡す場合、多くの場合、PHP 配列を JavaScript 配列に変換する必要があります。このタスクを実行する方法を示す簡単な例をいくつか示します。

json_encode 関数の使用

PHP 組み込み関数 json_encode は、PHP の配列を JSON オブジェクトに変換できます。 「JavaScript で使用」で直接使用できます。以下に例を示します。

$data = array('a', 'b', 'c', 'd');
echo '<script>var jsArray = ' . json_encode($data) . ';</script>';
ログイン後にコピー

これにより、次のコードのような JavaScript スクリプトが出力されます。

var jsArray = ["a", "b", "c", "d"];
ログイン後にコピー

このトリックは、JavaScript コードで PHP 変数を使用するために使用できます。たとえば、PHP 配列の値を Web ページのドロップダウン リストに動的に追加する必要がある場合は、次のコードを使用できます:

<?php
$names = array(&#39;Alice&#39;, &#39;Bob&#39;, &#39;Carol&#39;, &#39;Dave&#39;);
?>

<select id="nameList">
  <?php
  foreach ($names as $name) {
    echo &#39;<option value="&#39; . $name . &#39;">' . $name . '</option>';
  }
  ?>
</select>

<script>
var jsNames = <?php echo json_encode($names); ?>;
jsNames.forEach(function(name) {
  var option = document.createElement('option');
  option.text = name;
  option.value = name;
  document.getElementById('nameList').add(option);
});
</script>
ログイン後にコピー

Use JavaScript Object Notation

PHP 配列に特殊文字が含まれていない場合は、エスケープする必要がある場合があるため、JavaScript オブジェクト表記リテラルを直接使用できます。たとえば、次の PHP コードは 4 つのプロパティを持つ PHP オブジェクトを作成します:

$data = array(
  'name' => 'Alice',
  'age' => 28,
  'hobbies' => array('reading', 'swimming', 'yoga'),
  'address' => array(
    'street' => '123 Main St',
    'city' => 'New York',
    'state' => 'NY'
  )
);
ログイン後にコピー

この配列を JavaScript オブジェクトに変換するには、HTML に次のコードを含めるだけです:

<script>
var jsObject = <?php echo json_encode($data); ?>;
console.log(jsObject);
</script>
ログイン後にコピー

これにより、以下を出力します:

{
  "name": "Alice",
  "age": 28,
  "hobbies": [
    "reading",
    "swimming",
    "yoga"
  ],
  "address": {
    "street": "123 Main St",
    "city": "New York",
    "state": "NY"
  }
}
ログイン後にコピー

json_encode の結果は安全な JSON 形式であるため、このメソッドを使用して特殊文字をエスケープする必要はないことに注意してください。

JavaScript 配列関数の使用

非常に単純な PHP 配列を使用している場合は、JavaScript の配列関数を使用して手動でコピーできます。たとえば、次の PHP コードは、数値のみを含む単純な配列を作成します。

$data = array(2, 4, 6, 8);
ログイン後にコピー

この配列を JavaScript 配列に変換するには、配列内の各要素を手動でコピーします。次の JavaScript コードは、配列をコピーして出力する方法を示しています:

<script>
var jsArray = [];
<?php foreach ($data as $value): ?>
  jsArray.push(<?php echo $value; ?>);
<?php endforeach; ?>
console.log(jsArray);
</script>
ログイン後にコピー

これにより、次の内容が出力されます:

[2, 4, 6, 8]
ログイン後にコピー

ネストされた配列をコピーする必要がある場合、このメソッドは機能しないことに注意してください。 PHP 配列または連想配列。自分が何をしているのかを理解していない限り、この方法はお勧めできません。

結論

PHP 配列を JavaScript 配列に変換することは、Web プログラミングにおける一般的なタスクの 1 つです。組み込みの json_encode 関数を使用すると、PHP 配列を JavaScript コードで使用できる JSON オブジェクトに変換できます。 JavaScript オブジェクトを使用する場合、または JavaScript 配列を手動でコピーする場合は、いくつかの代替手段があります。自分のタスクに最適なものを選択し、PHP と JavaScript の間でデータを柔軟に転送してください。

以上がPHP配列をJS配列に変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)