これは本当に変です。私は未定義インデックスの意味を知っています。しかし、このコードを見てください。Notice:未定義インデックス:loss_items
これは私がスクリプトの先頭に得たものである:
$__load = array(
'loss_experience' => NULL,
'loss_items' => NULL,
'guild_info' => NULL,
'skull_type' => NULL,
'skull_time' => NULL,
'blessings' => NULL,
'direction' => NULL,
'stamina' => NULL,
'world_id' => NULL,
'online' => NULL,
'deletion' => NULL,
'promotion' => NULL,
'marriage' => NULL
);
は、そのクラスで私はこれだ:
public function load($id)
{
global $__load;
if($__load['loss_experience'] == NULL)
{
$loss = '';
if(fieldExist('loss_experience', 'players')) {
$loss = ', `loss_experience`, `loss_mana`, `loss_skills`';
}
$__load['loss_experience'] = $loss;
}
if($__load['loss_items'] == NULL)
{
$loss_items = '';
if(fieldExist('loss_items', 'players')) {
$loss_items = ', `loss_items`, `loss_containers`';
}
$__load['loss_items'] = $loss_items;
}
を、これは私がなるエラーです:
Notice: Undefined index: loss_items in D:\xampp\htdocs\myaac\system\libs\pot\OTS_Player.php on line 145
行145は次のとおりです。
if($__load['loss_items'] == NULL)
私は間違っていましたか?
$__load['loss_experience'] = $loss;
はその後通知があったされていません。私は、この行をコメント
。しかし、私はそれを宣言する必要があります。
@Edit 私はこれを試みた:最初のvar_dumpの
public function load($id)
{
global $__load;
var_dump($__load);
if($__load['loss_experience'] == NULL)
{
$loss = '';
if(fieldExist('loss_experience', 'players')) {
$loss = ', `loss_experience`, `loss_mana`, `loss_skills`';
}
$__load['loss_experience'] = $loss;
}
var_dump($__load);
if($__load['loss_items'] == NULL)
{
出力は:NULL
そして第二のvar_dump:配列(1){[ "loss_experience"] =>列(0 ) ""}
これは、$ end変数の宣言が表示されないようですが、なぜですか?
テスト済みです。私の側でうまく動作します。 'var_dump($ __ load);を実行してみてください。 – Ibu
あなたはあなたの関数をpublic宣言しています - これはクラスメソッドですか?もしそうなら、なぜ '$ __load'を私用変数にして、代わりに' $ this-> __load'を使うのですか? –
投稿を編集しました。私はあなたが言ったことを試して、それは私のトップ宣言変数を参照していないようです。 – slawkens