A Chilean Rut script to handle ruts. Take a look at contributing.md to see a to do list.
Via Composer
$ composer require innovaweb/chileanrut
Format the rut according to the assigned parameters, if withDotted is true it will always return with a hyphen, return string value
Params | Type | Description |
---|---|---|
$rut | string | rut with any of these formats 11.111.111-1, 11111111-1, 111111111 |
$withDotted | bool | return rut with dots format, default true |
$withHyphen | bool | return rut with hyphen format. default true |
Rut::format('123123123'); // return 12.312.312-3
Rut::format('123123123', false); // return 12312312-3
Rut::format('123123123', false, false); // return 123123123 (it is best to use the unformat function)
Clean the rut of spaces, dots and hyphens, return string value
Params | Type | Description |
---|---|---|
$rut | string | rut with any of these formats 11.111.111-1, 11111111-1, 111111111 |
Rut::unformat('12.312.312-3'); // return 123123123
Check if the code is valid with the validation algorithm, return boolean value
Params | Type | Description |
---|---|---|
$rut | string | rut with any of these formats 11.111.111-1, 11111111-1, 111111111 |
Rut::validate('12.312.312-3'); // return true
Calculates the check digit from a sequential rut number, return string value
Params | Type | Description |
---|---|---|
$number | int | only the number of rut as integer type |
Rut::calculateDv(12312312); // return 3
Extract the numerical part of the rut, can return with points according to the parameters, return string value
Params | Type | Description |
---|---|---|
$rut | string | rut with any of these formats 11.111.111-1, 11111111-1, 111111111 |
$withDotted | bool | return rut with dots format, default true |
Rut::getNumber('12312312-3'); // return 12312312
Rut::getNumber('12312312-3', true); // return 12.312.312
Extract the check digit part of the rut, return string value
Params | Type | Description |
---|---|---|
$rut | string | rut with any of these formats 11.111.111-1, 11111111-1, 111111111 |
Rut::getDv('12312312-3'); // return 3
namespace App\Http\Controllers;
use Innovaweb\ChileanRut\Rut;
class RutController extends Controller
{
public function index()
{
$format = Rut::format('123123123');
$unformat = Rut::unformat($format);
return [
$format,
$unformat,
Rut::validate($unformat),
Rut::calculateDv(12312312),
Rut::getNumber($format, false),
Rut::getDv($format),
];
}
}
Result
[
"12.312.312-3",
"123123123",
true,
"3",
"12312312",
"3"
]
Please see the changelog for more information on what has changed recently.
$ composer test
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
license. Please see the license file for more information.