質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.35%
PHP

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

Q&A

解決済

2回答

1107閲覧

Notice: Undefined offset: 6

tege

総合スコア29

PHP

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

0グッド

0クリップ

投稿2020/06/25 09:28

php

1 2require_once($_SERVER["DOCUMENT_ROOT"] . "/test/product.php"); 3 4$Product = [ 5 new Product('パン',7,5), 6 new Product('魚',5,15), 7 new Product('レタス',5,25), 8 new Product('カレー',9,3), 9 new Product('コーヒー',11,19), 10 new Product('お茶',2,23), 11]; 12 13for($i = 1; $i<=12; $i++){ 14 echo "■■■■{$i}月です<br>"; 15 foreach($Product as $Products){ 16 if($Products->isProductMonth($i)){ 17 echo "{$Products->getName()}{$Products->getProductDay()}日に発売です"; 18 } 19 } 20 if(!($i == $Product[$i]->getProductMonth())){ 21 echo '今月発売の商品はありません<br>'; 22 } 23} 24

上記のコードを実行すると

php

1 if(!($i == $Product[$i]->getProductMonth())){ 2 echo '今月発売の商品はありません<br>'; 3 }

この箇所でNotice: Undefined offset: 6というエラーが返されるのですが何か回避する方法はありませんでしょうか?

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

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

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

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

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

guest

回答2

0

ベストアンサー

配列のindexは0(ゼロ)がスタートです。

しかし、1月から12月までのデータが入ってないのになぜ$iで$Productを確認しようとしているのでしょう。設計どうなってますか?
既にある回答のように設計見直さないと根本的な解決にならないと思います。そこだけ対応したところで、要件満たせないのでは(要件書かれてないので知らないけど)

投稿2020/06/25 09:41

m.ts10806

総合スコア80875

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

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

0

このエラーを回避するには、$Product[6]を作るか、使用しないようにしてください。

*多分、設計がおかしいです。6 以降全部で問題が発生するはずです。

投稿2020/06/25 09:32

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問