🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Joomla!

Joomla!は、Webやイントラネットにおいてコンテンツを公表する為の、オープンソースのコンテンツ管理システム(CMS)です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

2回答

2596閲覧

php 配列に入れると文字化けする

Qoo

総合スコア1249

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Joomla!

Joomla!は、Webやイントラネットにおいてコンテンツを公表する為の、オープンソースのコンテンツ管理システム(CMS)です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2021/01/09 02:05

編集2021/01/09 02:16

phpでsqlで取得したデータを配列に格納したあと、echoすると文字化けしています

echo結果はこんなんです → 材料・デバイス-�
sqlでの結果は化けておらず、
例えば、$test = $results[$i]['0'];
みたいに普通に配列に格納すると文字化けは発生しません。

原因などがわかる方がおられましたら、教授いただけると幸いです。

php

1$i = 0; 2$cgr_array = array(); 3$sql = 'SELECT * FROM table_field GROUP by items'; 4$db->setQuery($sql); 5$results = $db->loadRowList(); 6foreach ($results as $row) { 7 array_push($cgr_array, $results[$i]['0']); 8 echo ($results[$i]['0'] . '-' . $cgr_array[$i]['0']); 9 $i += 1; 10} 11

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2021/01/09 02:12

普通に卑劣に とは。
m.ts10806

2021/01/09 02:12

あと文字コード、テーブル定義、サンプルデータをご提示ください。
Qoo

2021/01/09 02:16

卑劣→配列の違い
Qoo

2021/01/09 02:17

データ関係ありますかね? $test = $results[$i]['0']; だと化けないので、テーブル定義や構造上の問題ではないと考えていました。
m.ts10806

2021/01/09 02:19

それが判断できるほどの情報が提示されてません。 あなた自身は分かっているからいいかもしれませんが、見ている人は何の事情も知らない赤の他人です。
m.ts10806

2021/01/09 02:23

ただ「Joomla」が前提の時点で回答は得られにくいと思ってます(総質問数17タグ登録者14)。 データ関連の情報ないので余計にですね。
guest

回答2

0

解決したようなので蛇足を…
せっかく foreach 使うならこんなかんじにしてはどうでしょうか。

php

1$sql = 'SELECT * FROM table_field GROUP by items'; 2$db->setQuery($sql); 3$results = $db->loadRowList(); 4 5$cgr_array = array(); 6foreach ($results as $row) { 7 $cgr_array[] = $row['0']; 8}

あと、こういった方法も

php

1//前略 2$cgr_array = array_column($results, '0');

投稿2021/01/09 11:01

takasima20

総合スコア7460

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Qoo

2021/01/09 14:24

ありがとうございます!
guest

0

ベストアンサー

array_push($cgr_array, $results[$i]['0']);

echo ($results[$i]['0'] . '-' . $cgr_array[$i]['0']);

なんか、違う物を表示してますが?

PHP

1 array_push($cgr_array, $results[$i]); 2 echo ($results[$i]['0'] . '-' . $cgr_array[$i]['0']); 3または、 4 array_push($cgr_array, $results[$i]['0']); 5 echo ($results[$i]['0'] . '-' . $cgr_array[$i]);

では?

投稿2021/01/09 04:44

otn

総合スコア85888

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問