<?php
require_once(dirname(__FILE__).'/nb.php');
+if (!defined('EOL')) define('EOL',NB_EOL);
/*
Vim:
return $_txt2md->text($txt);
}
-function bye($msg='',$backtrace_deep=0) {
+function bye($msg='__bye__',$backtrace_deep=0) {
#if ($msg) err($msg,'bye',$backtrace_deep === 0 ? 1 : $backtrace_deep);
- if ($msg) err($msg,'bye',( $backtrace_deep !== false ? (1+$backtrace_deep) : $backtrace_deep ));
+ if ($msg!=='__bye__') err($msg,'bye',( $backtrace_deep !== false ? (1+$backtrace_deep) : $backtrace_deep ));
#if ($msg) err($msg,'bye',1+$backtrace_deep);
exit;
}
file_write("php://stderr","$msg\n");
}
-function err($msg,$preff='err',$backtrace_deep=0) {
+function err($msg='__err__',$preff='err',$backtrace_deep=0) {
$msg = is_scalar($msg) ? $msg : print_r($msg,true);
- if ($msg and $backtrace_deep !== false) $msg .= ' '.nb::debug_backtrace_msg(1+$backtrace_deep,NULL,strtoupper($preff).": ");
+ $preff_msg = $preff ? strtoupper($preff).': ' : '';
+ if ($msg !== '__err__' and $backtrace_deep !== false) {
+ $msg = $preff_msg.trim($msg.' ')
+ .nb::debug_backtrace_msg(1+$backtrace_deep,NULL,$preff_msg)
+ #.nb::debug_backtrace_msg(1+$backtrace_deep,NULL)
+ ;
+ } else {
+ $msg = $preff_msg.$msg;
+ }
- nb::msg( preg_match('/ml/i',nb::get_header('Content-type'))
- ? '<pre class="'.($preff and $preff!='err' ? 'err ': '').$preff.'">'.$msg.'</pre>'
- : strtoupper($preff).": $msg"
+ nb::msg( !nb::php_cli()
+ ? '<pre'
+ .' class="err'. ( ($preff and $preff!='err') ? " $preff" : '' ).'"'
+ .'>'.NB_EOL.$msg.NB_EOL.'</pre>'.NB_EOL
+ : $msg
).NB_EOL;
- return false;
}
function debug($msg,$level=0) {