Home  >  Q&A  >  body text

Trying to access a null type value using array offset

<p>I have a php bot (on IRC) and since I updated php and mysql to the latest versions of CentOS, I'm getting this error</p> <pre class="brush:php;toolbar:false;">unset($ops_activos); unset($voices_activos); if ($on_pthelp == 1) { if ($ops["#pthelp"]['count'] > 0) { foreach ($ops["#pthelp"] as $value) { if (!is_int($value)) { if (isset($ops_activos)) { $ops_activos .= " " . $value; } else { $ops_activos = $value; } } } if ($bot_debug) { scmd("PRIVMSG ". $log_chan ." :[Membros (Mode)] [OPS]: ". $ops_activos); } } unset ($value); if ($voices["#pthelp"]['count'] > 0) { foreach ($voices["#pthelp"] as $value) { if (!is_int($value)) { if (isset($voices_activos)) { $voices_activos .= " " . $value; } else { $voices_activos = $value; } } } if ($bot_debug) { scmd("PRIVMSG ". $log_chan ." :[Membros (Mode)] [VOICES]: ". $voices_activos); } }</pre> <p>Error line</p> <pre class="brush:php;toolbar:false;">if ($ops["#pthelp"]['count'] > 0) {</pre></p>
P粉334721359P粉334721359444 days ago567

reply all(1)I'll reply

  • P粉268654873

    P粉2686548732023-08-26 08:07:08

    Before comparing you need to check if the key you have exists in the array because it won't find it anyway.

    Please use the following code instead:

    if (isset($ops["#pthelp"]['count']) && $ops["#pthelp"]['count']> 0)

    Also, doing this will avoid any further problems.

    if (isset($voices["#pthelp"]['count']) &&  $voices["#pthelp"]['count'] > 0)

    reply
    0
  • Cancelreply