/** * Заменяет последовательно {} на аргументы вызова функции * @param type $msg - сообщение * @param type $param1 - параметр 1 * @param type $param2 - параметр 2 * @param type $param3 - параметр 3 * @return type */ public static function replaceWithBraced($msg = '', $param1 = null, $param2 = null, $param3 = null) { $params = func_get_args(); if (count($params) > 1) { unset($params[0]); $msg = PsStrings::replaceWithParams('{}', $msg, $params); } return $msg; }
public function info($msg = '', $param1 = null, $param2 = null, $param3 = null) { $num = func_num_args(); if ($num > 1) { $params = func_get_args(); unset($params[0]); $msg = PsStrings::replaceWithParams('{}', $msg, $params); } $this->logger->doWrite($this->id, $msg); }
protected static final function log($msg, $arg1 = '', $arg2 = '') { $num = func_num_args(); if ($num > 1) { $params = func_get_args(); unset($params[0]); $msg = PsStrings::replaceWithParams('{}', $msg, $params); } $class = get_called_class(); $trace = PsUtil::getClassFirstCall($class); $name = $trace['function']; echo "\n{$class}::{$name}: " . trim($msg) . "\n"; }
/** * @covers PsStrings::replaceWithParams */ public function testReplaceWithParams() { $this->assertEquals(PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2)), 'a1b2c+d+e+f'); $this->assertEquals(PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2, 3)), 'a1b2c3d+e+f'); $this->assertEquals(PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2, 3, 'X')), 'a1b2c3dXe+f'); $this->assertNotEquals(PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2, 3, 4)), 'a1b2c3d+e+f'); try { PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2, 3, 'X'), true); $this->brakeNoException(); } catch (PException $ex) { } try { PsStrings::replaceWithParams('+', 'a+b+c+d+e+f', array(1, 2, 3, 4, 5, 6), true); $this->brakeNoException(); } catch (PException $ex) { } }
/** * Метод выбрасывает ошибку, заменяя {} последовательно на параметры */ public static function raise($msg, $param1 = null, $param2 = null) { $params = func_get_args(); if (count($params) > 1) { unset($params[0]); $msg = PsStrings::replaceWithParams('{}', $msg, $params); } raise_error($msg); }