NASER convert fa numbers to en

This commit is contained in:
gholak tala
2026-02-05 08:33:50 +00:00
parent fd3c9b0320
commit 26d87a793f
@@ -19,6 +19,11 @@ class ValidationMiddleware
public function handle(Request $request, Closure $next)
{
if($request->acceptsJson()){
//convert fa digits to en digits
$allData = array_merge($request->all(), $request->query());
$converted = $this->fa2en_numbers($allData);
$request->merge($converted);
$method = $request->getMethod();
$path =$request->path();
if(preg_match('/[0-9]+$/',$request->path(),$match)) {
@@ -46,4 +51,16 @@ class ValidationMiddleware
}
throw new BadRequestHttpException();
}
private function fa2en_numbers($input) {
if (is_string($input)) {
$fa_numbers = ['۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹'];
$en_numbers = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
return str_replace($fa_numbers, $en_numbers, $input);
} elseif (is_array($input)) {
return array_map([$this, __FUNCTION__], $input);
} else {
return $input;
}
}
}