• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:この配列のフォーマットの種類を教えてください)

BuddyPressで作られたユーザー登録画面のカスタムチェックボックス型のプロフィール情報のデータベースのフォーマットとは?

このQ&Aのポイント
  • WordPressのSNSプラグインであるBuddyPressで作られたユーザー登録画面のカスタムチェックボックス型のプロフィール情報のデータベースでは、特定のフォーマットでデータが格納されています。
  • この配列はjson形式ではなく、特定の形式でデータが格納されています。
  • 配列の各要素には、IDと値が対応付けられています。

質問者が選んだベストアンサー

  • ベストアンサー
  • mpro-gram
  • ベストアンサー率74% (170/228)
回答No.1

php の serialize関数で、配列を文字列変換すると、そんな形式になります。 先頭の a は配列の意味、 i は数値添え字、s は文字列 a の次の数値は、要素個数、 i の次は、添え字番号、 s の次は、文字数(バイト数だったかも?)なので、このデータは、実際のものではありませんね(情報保護で書き換えてるのでしょうから、かまいませんが)。 {} は、配列内要素がどこまでなのかを示す括り。 php で unserialize() すると、以下のような配列になるはず。 array( 0=>"aiueo", 1=>"kakikukeko", 2=>"sasisuseso") http://jp.php.net/manual/ja/function.serialize.php  書き出したデータ形式についての記載は、ユーザーノートのだいぶ下の方 http://jp.php.net/manual/ja/function.serialize.php#66147

John12345
質問者

お礼

的確なご回答ありがとう御座いました。 ご指摘の内容で配列化することができました! ありがとう御座いました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ローマ字入力かな変換が異常です。

    NEC LaVie LL800/Kのローマ字入力・かな変換が、最近、急に異常になりました aiueo が あ54え6 kakikukeko が 2あ25242え26 sasisuseso が さs5s4せs6 のようになります。「あいうえお」、「かきくけこ」、「さしすせそ」 になってくれません。 これはどうしたら直るのでしょうか?よろしくお願いいたします。

  • if文などで使用される条件式で、同じような条件をまとめる方法

    $keyという変数には、aiueo、kakikukeko、sasisuseso、tatitutetoなどの文字列が入ると仮定して、if文でaiueo、sasisusesoの文字列の時のみ、実行させないようにしたい場合、通常は if ($key != "aiueo" && $key != "sasisuseso") {   処理 } としなければなりません。しかし、これだともっと条件が多くなった場合、非常に見づらくなってしまいます。 「$keyと言う変数が、○○、××、■■、・・・以外の値の時」という条件を各場合、もっと簡潔にまとめて書く方法って無いでしょうか? 例えば、if ($key != ("aiueo" && "sasisuseso"))みたいな感じで。 (switchを使う手もありますが、これは他の変数($a == 0など)に関する条件を組み合わせたい場合、面倒になるので) もし、方法などありましたら、教えていただければと思います。

    • ベストアンサー
    • PHP
  • gawk複数ファイルを同ファイル名でフォーマットする方法

    gawk複数ファイルを同ファイル名でフォーマットする方法 gawkを使いcsv形式のファイルをjson形式のファイルにフォーマットしようと考えています。 簡単に説明しますと、 ●csvファイル test1.csv test2.csv test3.csv ↓↓↓↓ ●jsonファイル xxx-test1.json xxx-test2.json xxx-test3.json という風にフォーマットさせたいのです。 現在、 jsonファイル出力後の記述を ●aaa.awk BEGIN { FS = ","; printf("{"); } { printf("%s,%s,%s,%s", $1,$3,$4,$5); printf("],"); } END { printf("}"); } このようにし ●コマンドライン gawk -f aaa.awk test1.csv > xxx-test1.json これで一ファイルずつのフォーマットはできたのですが、 ファイル数が複数あり面倒なため、一気にフォーマットしたいのです。 その方法をご教授お願い致します。

  • 2次元のJSON形式の配列の展開

    JSON形式で受け取った2次元配列をHTMLに書き出そうとしています。 配列を指定するカラム名?を変数にしたいのですがうまくできません。 var hoge = "abc"; var len = result.length; for (i = 0; i < len; i++){  objResult.append("<li><a href=" + result[i].ID + ">" + result[i].hoge + "</a></li>"); } ※objResultはul要素を変数に収めたものです。 JSONデータは1列目のカラム名は『ID』で固定ですが2列目は変動する為、上記の『hoge』の部分にはJSONデータを受け取る前にカラム名を別処理で取得して格納しています。 ご教授の程よろしくお願いします。

  • エクセルで表引き

    知人のPCにて、「桐」というソフトを拝見しました。 その桐で、左端先頭列に値を入力すると、他のデーターファイル上の先頭列の値と一致した行の値を、エンターキーの連打で、コピーしていく・・・、というものを見ました。「表引き」というメッセージが出ていたと思います。 これと同様なことをエクセルでもできるものでしょうか。 例) データーファイル 0001 あいうえお アイウエオ aiueo 0002 かきくけこ カキクケコ kakikukeko 0003 さしすせそ サシスセソ sasisuseso  ・  ・  ・ 編集ファイルで、 0003と入力して、エンターを押すと、データーファイル上の、「0003」という値が入った行を、エンターキーを押すことで、コピーをしていく。 0003(エンター)→自動的に次の列に「さしすせそ」(エンター)→自動的に次の列に「サシスセソ」(エンター)→自動的に次の列に「sasisuseso」(エンター)→自動的に次の行の先頭列に移動。 というようなものです。 #知人の「桐」をさわらせてもらい、どこの設定で、データーファイルを指定して、どの列を参照していくかというものを探しましたが、まったくわからず・・・。知人もそのまた知人に作ってもらったtblファイルなので、設定の仕方、変更のしかたもわからずでした。 宜しくお願いいたします。

  • 配列がずれてしまう

    C言語初心者です。 二次配列を組んだのですが、初期では正常に配列に入ったのですが、 次回のループで入っていた筈の数値がズレてしまいます。 #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; // FILE型構造体 char fname[] = "c:\\tmp\\test.txt"; int f1, f2, f3, f4, f5; int i,p,s; int r_table[1100][4]; //ファイル読み込み用構造体 for(i=0;i<1100;i++){ for(p=0;p<4;p++){ r_table[i][p]=0; } } fp = fopen(fname, "r"); // ファイルを開く。失敗するとNULLを返す。 if(fp == NULL) { printf("%s file not open!\n", fname); return -1; } i=0; while(fscanf(fp, "%d %d %d %d %d", &f1, &f2, &f3, &f4, &f5) != EOF) { //数字の格納 r_table[i][0]=f1; r_table[i][1]=f2; r_table[i][2]=f3; r_table[i][3]=f4; r_table[i][4]=f5; printf("%d %d %d %d %d\n", r_table[i][0],r_table[i][1],r_table[i][2],r_table[i][3],r_table[i][4]); i++; } fclose(fp); // ファイルを閉じる printf("\n"); for(s=0;s<10;s++){ //数字の抜出 10回ループ printf("%d %d %d %d %d\n", r_table[s][0],r_table[s][1],r_table[s][2],r_table[s][3],r_table[s][4]); } return 0; } 実行結果 9 13 14 19 22 1 14 25 29 31 4 12 15 22 25 3 13 18 19 22 2 8 14 17 26 1 3 4 9 16 2 18 19 28 30 9 10 16 17 28 9 13 14 19 1 1 14 25 29 4 4 12 15 22 3 3 13 18 19 2 2 8 14 17 1 1 3 4 9 2 2 18 19 28 9 9 10 16 17 28 どうやら、r_table[s][4]にr_table[s+1][0]が入ってしまっているように見られます。 どの部分が間違っているのかご教示頂けたらと思います。

  • 配列への文字列の格納について

    C言語で文字列を扱う時、配列に1文字ずつ格納していくか、ポインタ変数を使うと思うのですが、 ポインタ変数を使った場合の処理が上手くできずに困っています。 詳細を説明すると、値を取得して、前回取得した値と比較します。 それで、同じだった場合には"chritm1"に格納した矢印を書き込む処理なのですが、 現在はfor文により配列に格納したものを使用していますが、 この部分をポインタ変数を使用した処理(1文字1文字書くのではなく、string型変数の用に書き込みたい) に変更したいのですが、上手くできないという状況です。 何かとっかかりとなるようなことでもかまいませんので、教えてください。 よろしくお願いします。 static int mainA( char *fileName){ int loop, i, j; FILE *fd; /* 前回値格納用 */ char *preval; /* 現在値格納用 */ char *thisval; /* 同値用記号格納用 */ char chritm1[6] = " → "; -- 中略 -- for( i = 0 ; i < 150 ; i++ ) { thisval = redata[i]; /* 値の比較 */ if(preval == thisval) { for( j = 0 ; j < 6 ; j++){ /* 前回値と同じ場合は矢印 */ fprintf( fd, ",%c",chritm1[j]); } }else{ /* 前回値と異なる場合は値 */ fprintf( fd, ",%s", thisval); } preval = thisval; /*完了したら改行 */ fprintf( fd, "\n" ); } -- 以下略 --

  • JSON形式で取得した8桁の数字を○○年にしたい

    8桁の数字データを、○○年○○月○○日と変換して表示させたいのですが、どうやったらよいでしょうか。 今、手元に、csvからデータを取得して表示させるサンプルがあります。 その元データの生年月日部分は、8桁の数字です。 // JSON形式で取得したデータを配列に変換 var list = eval( '(' + data + ')' ); // データを1データ毎 $.each(list,function(i) { // 各項目毎に変数に入れる var birth = makeTableData(this.birth,"data_birth"); みたいな感じになっています。 イメージしているのは、 substr($hoge,0,4); みたいな感じで、 この格納されている8桁の数字データを、 ○○年○○月○○日と変換させ表示させたいのですが、 どうすればよいのでしょうか? また、「JSON形式で取得したデータを配列に変換」って意味は、 javasvriptオブジェクトに変換しているってことなのでしょうか?

  • wordpressの個別ページに外部ファイルを‥

    wordpressの個別ページに外部javascriptファイルを使用して動画を貼り付けたいのですが、いまいち方法がわかりません。Custom CSS and JavaScriptプラグインを有効化して、カスタムフィールドに名前と値(http://~)をいれたのですがブログ記事に動画がつきません。何か別にphpファイルを用意してスクリプトを記述しないといけないのでしょうか? ちなみに貼り付けたいスクリプトはhttp://www.schick-jp.com/tvcmのサイトにあるものです。

    • ベストアンサー
    • PHP
  • 配列の値について

    度々の質問で恐縮です。長時間かけて試行錯誤するものの一向に解決せず、お知恵をお借りできればと思い投稿させて頂きました。 ---------------- for ($i = 0; $i <= 2; $i++) { // 3回ループです。 if (is_uploaded_file(@$_FILES["img"]["tmp_name"][$i])) { $pre = "s_"; $imgname[$i] = basename($_FILES['img']['name'][$i]); $imgfile[$i] = $imgdir . $imgname[$i];   << 中略(色々な処理) >> if (preg_match('/\.jpg$/', $imgname[$i]) > 0) { ImageJpeg($img_out[$i], $imgdir.$pre.$imgname[$i] ); $img_thumb = array($i => basename($imgdir.$pre.$imgname[$i]));} 【A】} 【B】} 【C】 ----------------- ■上記『$img_thumb』には配列の値を格納していますが、【A】、【B】の位置で『print_r』を実施したところ、Array ( [0] => ××.jpg ) Array ( [1] => ○○.jpg )Array ( [2] => △△.jpg ) のように配列データが格納されていますが、【C】の位置では、Array ( [2] => △△.jpg ) だけしか表示されません。 これを【C】の位置でも全て表示できるようにするにはどうすればよいか、何かアドバイスをぜひともよろしくお願いいたします。 分かりにくくて申し訳ありません。

    • ベストアンサー
    • PHP