
PHPで、クエリObjectをforeachで回す時に、次のレコードへ移動せずに次のレコードを取得したいです。
次のレコードの特定のフィールドの値を取って現在のレコードと比較させたいのですが、うまくいきません。
また、この手の質問でよく回答されているnext()は、クエリの場合、同じレコード内の次の値を取るだけなので意味がありませんでした。
また、次のレコードではなく前のレコードを取れば?という回答もありますが、今回はシステムの都合上、どうしても次のレコードを取得しなければならないため、どうしようもできず困っています。
//クエリの作成
$dbh = new PDO($dsn, $user, $password);
$statement = $dbh->prepare("SELECT テーブル1.* FROM テーブル1;");
if($statement){
if($statement->execute()){
while($row = $statement->fetch()){
$rows[] = $row;
}
}else{
$errors['error'] = "検索失敗しました";
}
$dbh = null;
}
//クエリを一行ずつ処理する
foreach($rows as $row){
//割愛
}
No.1ベストアンサー
- 回答日時:
なんか質問を誤読してるのかもしれませんが、$rows という配列に結果をすべて入れてから、foreachで一件ずつなにかしようとしているんですよね?
なら、やりたいのは↓こういうことでしょうか??
foreach($rows as $key => $row){
$nextkey = $key + 1;
if($row['column'] == $rows[$nextkey]['column']){
// 比較の結果なにかする。
}
}
ありがとうございます!
すごい!こんな書き方があるんですね!
$rows[$nextkey]['column']
非常に勉強になりました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
phpのheader("Location:#pos")...
-
フォームで戻った際に入力済み...
-
SplFileObject を利用したとき...
-
PHP8を使うと、大量のWarningが...
-
セッション関数を使わずにファ...
-
composerをインストールしたい...
-
php 完了画面の送信メールのコ...
-
csvファイルについて教えて下さ...
-
PHPの変わった閉じタグの必要性...
-
PHP8でWarning:Undefined varia...
-
phpの問い合わせフォームを作っ...
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
HTML PHP ラジオボタンのイベント
-
php でqiitaのサイトにあったフ...
-
PHPの勉強してます。 配列のと...
-
BASIC認証のフォームをデザイン...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
MySQLでデータベースにデータin...
-
csvをDBへ読み込んだら、NULLが...
-
Accessへ日付をINSERT
-
変数にNULLを代入したい
-
クエリObjectをforeachで回す時...
-
SQLiteでDBに書き込みできません
-
SQLで返り値が空とでる
-
ヒアドキュメントでSQLを書く事...
-
access → Oracleへのデータ移...
-
月毎の集計値を同じデータグリ...
-
phpを使って、絞り込み検索、条...
-
OracleからAccessへのインポート
-
PHPでいいね機能を作りたいので...
-
php sqlite count 列数取得
-
PHPでPostgreSQLのテーブルを表...
-
会員サイトでログイン後の会員...
-
@コスメのようにユーザーが採...
-
テーブルに行を追加
-
どちらが高速ですか?
-
phpでテーブルを作る際変数によ...
おすすめ情報