2016-03-28 11 views
0

Yeni bir Laravel 5 uygulaması oluşturmaya başladım. Uygulamamda bir site mesajı özelliğine ihtiyacım var, bu yüzden bir tane oluşturdum.FatalErrorException: Giriş dizesi çok uzun

FatalErrorException in ExceptionHandler.php line 412: Input string is too long

Apache hata günlüğü diyor:

Mon Mar 28 20:25:40.310761 2016] [fcgid:warn] [pid 2075:tid 3028430848] [client 127.0.0.1:56643] mod_fcgid: stderr: PHP Fatal error: Input string is too long in /Users/xxx/Development/Laravel/myapp/vendor/symfony/debug/ExceptionHandler.php on line 412, referer: http://app.dev/page/new

benim denetleyicisi İleti :: set yöntemini çağırın Ama yığını içine mesajları eklemek çalışıyorum şimdi zaman, aşağıdaki hatayı alırsınız :

Message::set('Page created'); 

Ve Mesaj sınıfı içerir:

<?php 

namespace App\Models; 

use Session; 

class Message { 

    const MESSAGE_INFO  = 0x1; 
    const MESSAGE_WARNING = 0x2; 
    const MESSAGE_ERROR  = 0x3; 

    public static function set($message, $type = MESSAGE_INFO) { 
     $messages = self::get(false); 
     $messages[$type][] = $message; 

     Session::put('app.messages', $messages); 
    } 

    public static function get($flush = true) { 
     $default = [ self::MESSAGE_INFO => [], self::MESSAGE_WARNING => [], self::MESSAGE_ERROR => []]; 

     if($flush) Session::pull('app.messages', $default); 
     return Session::get('app.messages', $default); 
    } 

    public static function isAny() { 
     $messages = self::get(false); 

     foreach($messages AS $store) if(!empty($store)) return true; 

     return false; 
    } 

} 

Bunun için çok kayboldum. Birisi bana yardım edebilir mi?

cevap

0

Hatalı olabilirsiniz, ancak bir diziyi Laravel oturumunda depolayabildiğinizden emin değilim.

Eğer oturumda da oturum değişkeni dökümü

Session::put('app.messages', $messages); 

deneyin bu diziyi saklamak sonra:

dd(Session::get('app.messages')); 

geri yüzden daha ayrıntılı inceleyebilirsiniz olsun sonuçla gel. İyi şanslar!

+0

Bu soruya cevap gönderdiğiniz için teşekkür ederiz. Kodda küçük bir hata vardı. Düzeltme, orijinal gönderiye eklendi. –

1

Sorun bu hat ile oldu:

public static function set($message, $type = MESSAGE_INFO) { 

Olmalıdır:

public static function set($message, $type = self::MESSAGE_INFO) { 

MESSAGE_INFO sabit değil global olarak, Message sınıfında tanımlanır.

Hata iletisi gerçekten kafa karıştırıcıydı. Message :: set ('Sayfa oluşturulan') koyduğumda; Bir try-catch bloğu içinde arama yapın, sonra hata iletisi:

FatalErrorException in GroupManagementController.php line 45: Allowed memory size of 268435456 bytes exhausted (tried to allocate 2890768384 bytes)