Errore in dump o dd laravel durante l'aggiunta di un carattere prima del risultato


13

Tutte le richieste e i dump in laravel aggiungono un ^ prima di un risultato, ciò avviene solo in dd o dump

esempio di errore

Esempio dd Richiesta: all ()

Questo effetto genera un sacco di errori sul mio codice, qualcuno oltre alcuni come quello?


Non ce l'ho.
— Andy Song,

penso che sia una configurazione su laravel, ho un altro progetto nello stesso server che non lo mostra
— Guilherme Freire

Fai una ricerca sul tuo progetto, potresti aver codificato quel personaggio da qualche parte. La maggior parte degli IDE ha quella funzione ( Find on Path...su phpstorm)
— porloscerros Ψ

Può riguardare. La stessa cosa è successa ieri dopo l'aggiornamento a Laravel 6.2
— z0mbieKale il

1
Perché questo genererebbe errori nel tuo codice? dde dumpsono strumenti di debug, non dovrebbero essere usati nel codice di produzione.
— Stratadox,

Risposte:


12

Ho avuto lo stesso problema con laravel framework Lumen (5.8.12) e ho risolto il problema tornando alla versione 5.8.4.

L'origine del problema sembra essere il componente VarDumper di Symfony ( \ vendor \ symfony \ var-dumper \ Cloner \ Data.php , linea 302 ):

$dumper->dumpScalar($cursor, 'default', '^');

Dovrebbe essere:

 $dumper->dumpScalar($cursor, 'default', '');

-1

Per variabili semplici, la lettura dell'output dovrebbe essere semplice. Ecco alcuni esempi che mostrano prima una variabile definita in PHP, quindi la sua rappresentazione di dump: Controlla questo collegamento per un migliore riferimento

Per esempio:

 $var = [
'a simple string' => "in an array of 5 elements",
'a float' => 1.0,
'an integer' => 1,
'a boolean' => true,
'an empty array' => [],
 ];
 dump($var);

La freccia grigia è un pulsante di attivazione / disattivazione per nascondere / mostrare i bambini di strutture nidificate.

$var = "This is a multi-line string.\n";
$var .= "Hovering a string shows its length.\n";
$var .= "The length of UTF-8 strings is counted in terms of UTF-8 characters.\n";
$var .= "Non-UTF-8 strings length are counted in octet size.\n";
$var .= "Because of this `\xE9` octet (\\xE9),\n";
$var .= "this string is not UTF-8 valid, thus the `b` prefix.\n";
dump($var);

class PropertyExample
{
public $publicProperty = 'The `+` prefix denotes public properties,';
protected $protectedProperty = '`#` protected ones and `-` private ones.';
private $privateProperty = 'Hovering a property shows a reminder.';
}

$var = new PropertyExample();
dump($var);
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.