[WordPress] 未定義のオフセットに PHP のエラー

スポンサーリンク

質問

PHP の次のエラーを受信午前

Notice undefined offset 1: in C:\wamp\www\includes\imdbgrabber.php line 36

ここでは、それが発生する PHP コード:

<?php
  function get_match($regex,$content)  
  {  
    preg_match($regex,$content,$matches);     

    return $matches[0];                     //ERROR HAPPENS HERE
  }
?>

エラーどういう意味ですか?

答え

preg_match

は一致を見つけられませんでした、

$matches

が空の配列。

preg_match

たとえば

$matches[0]

、アクセスする前に、一致が見つかったかどうかをチェックする必要がありますように:

function get_match($regex,$content)
{
    if (preg_match($regex,$content,$matches)) {
        return $matches[0];
    } else {
        return null;
    }
}

答え

PHP でこのエラーを再現する方法:

、空の配列を作成し、このようなキーを指定された値を求める:

php> $foobar = array();

php> echo gettype($foobar);
array

php> echo $foobar[0];

PHP Notice:  Undefined offset: 0 in 
/usr/local/lib/python2.7/dist-packages/phpsh/phpsh.php(578) : 
eval()'d code on line 1

何が起こったのですか?

あなたが含まれていないキーを指定された値を配列に尋ねた。それはあなたを与えるし、エラー ログに、上記のエラーを置く NULL 値

、配列であなたの鍵を探したし、

undefined

を発見しました。

どのように発生しないエラーですか?

かどうか、キーが存在する最初の値を求めるに行く前にお願いします

php> echo array_key_exists(0, $foobar) == false;
1

キーが存在する場合、その値をクエリする必要はありませんに存在しない場合、値を取得します。

答え

未定義 Java で ‘ArrayIndexOutOfBoundException’ のような PHP でオフセット エラーです

例:

<?php
$arr=array('Hello','world');//(0=>Hello,1=>world)
echo $arr[2];
?>

エラー: 未定義のオフセット 2

それ存在しない配列のキーを参照していることを意味します。数値の配列の整数キーを指す「オフセット」と「インデックス」が連想配列の文字列キーを指します

http://stackoverflow.com/questions/29127344/undefined-offset-in-php-debugging

スポンサーリンク

Leave a Reply