Мне нужно удалить метку времени [04-Nov-2014 12:22:17 UTC]
из error_log
используя php. Временные метки появляются в начале и в EOF, и в файле нет разрывов строк.
error_log
выглядит примерно так. Это в формате JSON.
[04-Nov-2014 12:22:17 UTC]{"buyer_accepts_marketing":false,"cart_token":"eeafa272cebfd4b22385bc4b645e762c","closed_at":null,"completed_at":null,"created_at":null,"currency":null,"email":"","gateway":null,"id":327474488104976385,"landing_site":null,"note":null,"referring_site":null,"shipping_lines":
я пытался preg_match()
, array_shift()
и т.д. Но ничего из этого не дало удовлетворительного результата.
Каков наилучший способ сделать это в php?
Попробуйте использовать это pre_replace();
:
$string = '[04-Nov-2014 12:22:17 UTC]{"buyer_accepts_marketing":false,"cart_token":"eeafa272cebfd4b22385bc4b645e762c","closed_at":null,"completed_at":null,"created_at":null,"currency":null,"email":"","gateway":null,"id":327474488104976385,"landing_site":null,"note":null,"referring_site":null,"shipping_lines":';
echo preg_replace('/\[([0-9\-a-zA-Z]{1,}) ([0-9\:]{1,}) ([0-9\a-zA-Z]{1,})\]/',"",$string);
Других решений пока нет …