お知らせ 未定義のオフセットソリューション
今日、友人のサーバーデバッグを手伝っていたら、以前の404疑似静的wpが使えなくなり、試しに404エラーのページにアクセスしてみたら、結果の最初の部分が表示されました。
お知らせ Undefined offset: 1 in D:\wwwroot
DATA::³ Files³ Electronics Tools on line 5.お知らせ Undefined offset: 2 in D:\wwwroot.jp on line 5
お知らせ Undefined offset: 2 in D:\wwwroot
お知らせ Undefined offset: 1 in D:\wwwroot.jp on line 12
この問題は配列でよく発生します。プログラムは正常に実行できますが、画面には常にこのプロンプトが表示されます。お知らせです。未定義のオフセット:......。php.iniファイルのerror_repotingパラメータを "EALL & Notice" に変更することで表示を抑制し、画面が正常に表示されるようにするのが一般的な方法です。
問題は解決したのですが、オフセットの後の数字が解らないのです。(例: Notice: Undefined offset: 4 ......) どういう意味でしょうか?また、文中の構文は明らかに正しいのに、なぜ警告が出るのでしょう。冷静に考えてみた結果
をオフセットします。次の数字は、間違っている配列の添え字です。通常は配列の範囲外であり、例えば配列$A[]の定義が10要素ある場合、$A[10]があればエラーになります(Notice: Undefined offset: 10 ...)配列の添え字は0から始まるので0~9までしかありません。
したがって、このような問題が発生した場合、あわてて表示を抑制する方法をとらずに(文章を追加する方が簡単です "error_reporting(オフセットを記入:次の数字);、必ず使用する配列の添え字に注意して、よく考えて、問題はすぐに解決しますよ!。また、配列の設定を解除してから、その内容を読み込もうとすることも可能で、phpのマニュアルにも記載されています。
確認ですが、UNSETを使用すると配列全体が破壊される可能性があります。この件に関しては、どこにも言及がなかったので、これを書くことにしました。
unsetと$myarray=array();を使ってunsetすることの違いは、明らかに配列は上書きされるだけで、まだ存在することです。
<?php
$myarray=array("Hello", "World");
echo $myarray[0]. $myarray[1]です。
unset($myarray)を使用します。
//$myarray=array()とする。
echo $myarray[0]. $myarray[1]です。
echo $myarray;
? >
unsetでの出力は。
<?
ハローワールド
お知らせ C:webpagesdainsidermyarray.php の 10 行目で未定義のオフセット: 0 です。
お知らせ C:webpagesdainsidermyarray.php の 10 行目で未定義のオフセット: 1 があります。
$myarray=array();での出力は。
? >
<?
ハローワールド
お知らせ C:webpagesdainsidermyarray.php の 10 行目で未定義のオフセット: 0 です。
お知らせ C:webpagesdainsidermyarray.php の 10 行目で未定義のオフセット: 1 があります。
アレイ
? >
元の投稿アドレス http://hi.baidu.com/putijie/item/04190dde206bd913e1f46fa9
実は、エラーを報告する行の前に@記号を追加すると、エラーがブロックされるのです。とても簡単です。
関連
-
TP5.1 で数値が正しく表示されない問題が発生しました。
-
この記事で大学4年間の記念としたい
-
IIS 7.5上のASP.NET 4.0とチャートに関する質問
-
fatal: リモートが見つからなかった refs/heads/cm-13.0
-
Androidのパッケージ名変更とパッケージ名エラーに対応するクライアントが見つからない場合の解決策
-
ResultSet が閉じた後の操作は許可されない ResultSet 閉鎖例外
-
解決方法:コマンドが見つかりません。
-
Echartsがエラーを発生させる: echarts Uncaught ReferenceError: echarts is not defined
-
Pythonでの強制変換('str'と'int'のインスタンス間でサポートされていないエラーが発生した場合)。
-
android:textAlignment パラメータ説明
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python using pip to install modules with ReadTimeoutError: HTTPSConnectionPoolの解決策
-
error: '}' トークンの前に未修飾のIDが必要です。
-
データベースエラーについて ERROR: 初期通信パケットの読み込み」でMySQLサーバに接続できなくなった
-
Eigen::Block... ...削除された関数を参照しようとしています Solution
-
一致するワイルドカードは厳密ですが、要素 'aop:aspectj' の宣言が見つかりません。
-
エラーです。反復不可能なfloatオブジェクトをアンパックできません
-
Unity3d Drag and Drop script reports error スクリプトクラスが見つからないため、スクリプトコンポーネント "" を追加できません。
-
Python で 'str' と 'int' のインスタンス間でエラー '>=' がサポートされていない
-
matlabでよく使われる論理演算
-
フロントエンドのhttpリクエストタイムアウトの概要について