Web開発まとめPHPからjavascriptへ値や連想配列を渡す手順まとめPHPでWeb開発をするときはPHP側からJavaScriptにデータを渡したい場面がでてきます。データというのは例えば数値とか文字列とか連想配列とか様々です。いう訳でここでは普段PHPを使うときによく使うJavaScriptへのデータの渡し方を自分なりにまとめてみたいと思います。この4つの渡し方をそれぞれコード例と一緒に紹介していきます。数値型というのは整数とか浮動小数とかのことです。?>;</script><?php単純にそのままPHPでの変数名をそのまま出力しています。3.141519;</script>特に何も問題ありません。整数とか少数に関しては渡すのはそれほど難しくはないですね。真偽値型の渡し方いわゆるTRUEとかFLASEの値です。これも数値型みたいにそのまま変数名を出力すれば渡せる・・・と良かったんですがそれはできません。(空文字列)になってしまうからです。本当にそのまま渡せないかどうかは次のコードを実行すれば分かります。;</script>TRUEが数値の1、FALSEに至っては空文字なので何も出力されていません。すればスマートに真偽値が出力できるのか?と探してみるとvar_exportという便利そうな関数がありました。この関数は公式リファレンスの説明によると次のような関数です。渡された変数に関する構造化された情報を返します。コードであるところが異なります。ver_exportより本来は1つめの引数を出力する関数ですが、第2引数にTRUEを渡すことでそれを有効なPHPコードで使われる形式で返してくれます。値を返すのではなく「有効なPHPコード」で返すという点がポイントです。これを使えば次のようにJavaScriptに対して真偽値を渡すことができます。これで数値型に加えて真偽値型も渡せるようになりました。文字列型はそのまま渡しちゃえばいいような気がしますが、それはできません。そのまま渡してしまうと文字列を囲むクォートが外れてしまうからです。文字列を渡す場合はしっかりとクォートを付けて渡すようにしましょう。?>";</script><?php文字列を渡すときはシングルクォート(')またはダブルクォート(")で囲むこれを忘れなければ大丈夫です。最後は連想配列の渡し方です。しようとすると文字列でないので当然エラーになります。出力する前にJavaScriptで有効なJSON文字列に変換しなくてはなりません。データをJSONとして文字列化するにはjson_encode関数が使われます。{"fruits":["apple","banana","cherry"]};</script>JavaScriptで有効なデータ形式になっていることが分かります。連想配列の場合はデータをJS側で有効な形式にしなくてはならないので少し厄介ですね。いってもjson_encode関数を挟むだけなのでそれほど面倒ではありません。出力それぞれの型に応じて渡し方が変わります。自分自身もよくWeb開発でよく使う方法なのでまとめました。個人でWebサービスとかツールとかを開発しているWeb系の人。このブログでは学んだことや開発に役立つ知識、プログラマーや開発者向けの情報を発信していく予定。PHP、JavaScript(jQuery)、CSSがメイン。コメントをキャンセルメールアドレスが公開されることはありません。付いている欄は必須項目ですCommentName*Email*Website上に表示された文字を入力してください。コメントデータの処理方法の詳細はこちらをご覧ください。個人でWebサービスとかツールとかを開発しているWeb系の人。このブログでは学んだことや開発に役立つ知識、プログラマーや開発者向けの情報を発信しています。未分類JavaScriptjQueryPHPCSSWordPressこんなアプリも作ってます。3Dドット絵メーカー(オープンベータ版)3Dドット絵(ボクセルアート)を作れるアプリ。個人でWebサービスとかツールとかを開発しているWeb系の人。このブログでは学んだことや開発に役立つ知識、プログラマーや開発者向けの情報を発信しています。2020.02.26Androidで簡単にシェア(共有)機能実装。