Arrays zu-string-Konvertierung Fehler in PHP
Habe ich folgenden code backtrace des Fehlers ....aber seine
$traces = debug_backtrace();
foreach ($traces as $k => $v)
{
if ($v['function'] == 'include'
|| $v['function'] == 'include_once'
|| $v['function'] == 'require_once'
|| $v['function'] == 'require')
{
$args = '';
if (isset($v['args']) && is_array($v['args']))
{
$size = count($v['args']);
foreach ($v['args'] as $key => $arg)
{
$args .= $v['args'][$key];
if($key < $size)
{
$args .= ', ';
}
}
}
$traces .= '#' . $k . ' '
. $v['function']
. '('.$args.') called at ['
. $v['file'].':'.$v['line'].']';
}
else
{
$function = (array_key_exists('function',$v)) ?
$v['function'].'() ' : 'function_name';
$file = (array_key_exists('file',$v)) ?
$v['file'] : 'file_name';
$line = (array_key_exists('line',$v)) ?
$v['line'] : 'line';
$traces .= "#{$k} $function called at {$file}:{$line}\n";//This line giving me notice...
}
}
Bin ich immer merke, wie Arrays zu-string-Konvertierung hier:
$traces .= "#$k $function called at $file:$line\n";
Will ich eigentlich konvertieren Sie das array in den string. Gibt es irgendeine Methode oder Funktion, die die Konvertierung zu tun, ohne mir irgendeine Nachricht...
Wie kann ich das korrigieren?
- Entweder
$function
,$file
oder$line
ist ein array...
Du musst angemeldet sein, um einen Kommentar abzugeben.
beginnen Sie mit:
dann versuchen Sie es zu tun
ich würde eher definieren $tracestr string zur Aggregation von text-Inhalten.
Sind Sie nicht, erstellen von array-richtig
Erstellen Sie einen string.
Es ist etwas falsch hier. $trace ist eine Debug-Backtrace-array. Während Sie foreach($Spuren) ... das scheint nicht definiert. Und Sie hängen zu $Spuren was soll ein nicht-Skalare mit der foreach-es.
Einfach einen Namen für deine Variablen richtig und machen Sie die Namen anders!