<?php

	class StringUtil 
	{
		function __construct() 
		{
		}
		
		function mask($val, $mask)
		{
			$maskared = '';
			$k = 0;
			for($i = 0; $i<=strlen($mask)-1; $i++)
			{
				if($mask[$i] == '#')
				{
					if(isset($val[$k]))
						$maskared .= $val[$k++];
				}
				else
				{
					if(isset($mask[$i]))
						$maskared .= $mask[$i];
				}
			}
			return $maskared;
		}

		function CopyEspacoDireita($Valor, $Posicao, $Tamanho)
		{
			$Result = "";
			$Valor = substr($Valor, $Posicao, $Tamanho);
			$Tamanho = $Tamanho - strlen($Valor);
			while ($Tamanho > 0)
			{
				$Tamanho = $Tamanho - 1;
				$Result .= " ";
			}
			$Result = $Valor .$Result;
			return $Result;
		}
		
		function CopyEspacoEsquerda($Valor, $Posicao, $Tamanho)
		{
			$Result = "";
			$Valor = substr($Valor, $Posicao, $Tamanho);
			$Tamanho = $Tamanho - strlen($Valor);
			while ($Tamanho > 0)
			{
				$Tamanho = $Tamanho - 1;
				$Result .= " ";
			}			
			$Result = $Result .$Valor;
			return $Result;
		}
		
		function ZeroEsquerda($Texto, $Casas)
		{
			return str_pad($Texto, $Casas, "0", STR_PAD_LEFT);
		}
		
		function SoNumeros($str)
		{
			return preg_replace("/[^0-9]/", "", $str);
		}
		
		function FormatCurr($format, $valor)
		{
			if ($valor == null)
				$valor = 0 ;
			return number_format($valor, 2, ",", ".");
		}
		
		function StrToDateTime($dateValue){	
			$dateValue = str_replace('/', '-', $dateValue);
			return date('Y-m-d', strtotime($dateValue));
		}
		
		function IncDay($dateValue, $d)
		{
			$dateValue = date('Y-m-d', strtotime($dateValue. ' + '.$d.' days'));
			return $dateValue;
		}
		
		function FormatDateTime($maks, $dateValue)
		{
			$date = date_create($dateValue);
			return date_format($date, $maks);
		}
		
		function DBNull($value)
		{
			if ($value == null)
				return "null";
			else
				return $value;
		}
		
		function DBDecimal($value)
		{
			if ($value == null)
				return 0.0;
			else
				return $value;
		}
		
		function DBInt($value)
		{
			if ($value == null)
				return 0;
			else
				return $value;
		}
		
		function DBString($value)
		{
			if ($value == null)
				return "''";
			else
				return "'". strtoupper(str_replace("'","",$value)) ."'";
		}
		
		function DBDate($value)
		{
			if ($value == null)
				return "null";
			else
				return "'". $value ."'";
		}
	}

?>