Laravel ಎಂಬುದು ಸ್ಥಳೀಯವಾಗಿರಲು, ವಿವಿಧ ಭಾಷೆಗಳು ಮತ್ತು ಸಂಸ್ಕೃತಿಗಳಿಗೆ ಹೊಂದಿಕೊಳ್ಳಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಅಪ್ಲಿಕೇಶನ್ ಆಗಿದೆ. ಸ್ಥಳೀಕರಣವು ಅನುವಾದದ ಮೂಲಕ ನಿರ್ದಿಷ್ಟ ಭಾಷೆಗೆ ಅಂತರಾಷ್ಟ್ರೀಯ ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ಹೊಂದಿಸುತ್ತದೆ.
localhost
. ಇಲ್ಲದಿದ್ದರೆ, ಬದಲಾಯಿಸಿ localhost
ನಿಮ್ಮ ಸ್ವಂತ ಡೊಮೇನ್ ಹೆಸರು ಅಥವಾ IP ವಿಳಾಸದೊಂದಿಗೆ (ನಿಮ್ಮ ಸ್ಥಾಪನೆಯನ್ನು ಅವಲಂಬಿಸಿ).Laravel ನಲ್ಲಿ, ಇತರ ಹಲವು ಚೌಕಟ್ಟುಗಳಂತೆ, ನಾವು ಬೇರೆ ಬೇರೆ ಭಾಷೆಗಳಿಗೆ ಅನುವಾದಗಳನ್ನು ಪ್ರತ್ಯೇಕ ಫೈಲ್ಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು. Laravel ಅನುವಾದ ಫೈಲ್ಗಳನ್ನು ಸಂಘಟಿಸಲು ಎರಡು ಮಾರ್ಗಗಳಿವೆ:
resources/lang/{en,fr,ru}/{myfile.php}
;resources/lang/{fr.json, ru.json}
;ಪ್ರದೇಶದಿಂದ ಭಿನ್ನವಾಗಿರುವ ಭಾಷೆಗಳಿಗೆ, ನೀವು ಅವುಗಳನ್ನು ಹೆಸರಿಸಬೇಕು directory/file
ISO 15897 ಪ್ರಕಾರ ಭಾಷೆಯ. ಉದಾಹರಣೆಗೆ, ನೀವು ಬ್ರಿಟಿಷ್ ಇಂಗ್ಲಿಷ್ಗೆ ಬಳಸುತ್ತೀರಿ en_GB
ಬದಲಾಗಿ en-gb
. ಈ ಲೇಖನದಲ್ಲಿ, ನಾವು ಎರಡನೇ ವಿಧಾನದ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುತ್ತೇವೆ, ಆದರೆ ಅದೇ ಮೊದಲನೆಯದಕ್ಕೆ ಹೋಗುತ್ತದೆ (ಅನುವಾದದ ಕೀಲಿಗಳನ್ನು ಹೇಗೆ ಹೆಸರಿಸಲಾಗಿದೆ ಮತ್ತು ಹಿಂಪಡೆಯಲಾಗಿದೆ ಎಂಬುದನ್ನು ಹೊರತುಪಡಿಸಿ).
ಈಗ, ಗೆ ಹೋಗೋಣ resources/views/welcome.blade.php
ನ ವಿಷಯಗಳನ್ನು ಫೈಲ್ ಮಾಡಿ ಮತ್ತು ಬದಲಾಯಿಸಿ body
ನಮ್ಮೊಂದಿಗೆ ಟ್ಯಾಗ್ ಮಾಡಿ, ಹಾಗೆ:
<body class="antialiased">
<div class="relative flex items-top justify-center min-h-screen bg-gray-100 dark:bg-gray-900 sm:items-center py-4 sm:pt-0">
<div class="max-w-6xl mx-auto sm:px-6 lg:px-8">
<div class="flex justify-center pt-8 sm:justify-start sm:pt-0">
Welcome to our website
</div>
</div>
</div>
</body>
ನಮ್ಮ ಸ್ಥಳೀಕರಣ ಸ್ವಾಗತ ಸಂದೇಶವನ್ನು ಸಿದ್ಧಪಡಿಸುವ ಮೂಲಕ ನಾವು ಪ್ರಾರಂಭಿಸುತ್ತೇವೆ, ಇದು Laravel ನಲ್ಲಿ ನಿಜವಾಗಿಯೂ ಸುಲಭವಾಗಿದೆ. ನೀವು ಮಾಡಬೇಕಾಗಿರುವುದು ಈ ಕೆಳಗಿನ ಕೋಡ್ನೊಂದಿಗೆ “ನಮ್ಮ ವೆಬ್ಸೈಟ್ಗೆ ಸುಸ್ವಾಗತ” ಪಠ್ಯವನ್ನು ಬದಲಿಸುವುದು: {{ __('Welcome to our website') }}
. ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ "ನಮ್ಮ ವೆಬ್ಸೈಟ್ಗೆ ಸ್ವಾಗತ" ಅನ್ನು ಪ್ರದರ್ಶಿಸಲು ಇದು ಲಾರಾವೆಲ್ಗೆ ಸೂಚನೆ ನೀಡುತ್ತದೆdefiನೈಟ್ ಮತ್ತು ಇಂಗ್ಲಿಷ್ ಹೊರತುಪಡಿಸಿ ಬೇರೆ ಭಾಷೆಯನ್ನು ಹೊಂದಿಸಿದ್ದರೆ ಈ ಸ್ಟ್ರಿಂಗ್ನ ಅನುವಾದಗಳಿಗಾಗಿ ನೋಡಿ (ನಾವು ಅದನ್ನು ನಂತರ ಪಡೆಯುತ್ತೇವೆ). ಇಂಗ್ಲಿಷ್ ಅನ್ನು ಡೀಫಾಲ್ಟ್ ಭಾಷೆಯಾಗಿ ಹೊಂದಿಸಲಾಗುವುದುdefiನಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ನಿಶ್, ಆದ್ದರಿಂದ ಡೀಫಾಲ್ಟ್ ಸೆಟ್ಟಿಂಗ್ ಮೂಲಕdefiಕೊನೆಯಲ್ಲಿ ನಾವು "ನಮ್ಮ ವೆಬ್ಸೈಟ್ಗೆ ಸುಸ್ವಾಗತ" ಪಠ್ಯವನ್ನು ಸರಳವಾಗಿ ಪ್ರದರ್ಶಿಸುತ್ತೇವೆ. ಸ್ಥಳವು ವಿಭಿನ್ನವಾಗಿದ್ದರೆ, ಹೊಂದಾಣಿಕೆಯ ಅನುವಾದವನ್ನು ಹುಡುಕಲು ನಾವು ಪ್ರಯತ್ನಿಸುತ್ತೇವೆ ಮತ್ತು ಅದನ್ನು ಕ್ಷಣದಲ್ಲಿ ರಚಿಸಲಾಗುತ್ತದೆ.
ಆದರೆ ಪ್ರಸ್ತುತ ಭಾಷೆ ಯಾವುದು ಅಥವಾ ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಯಾವ ಭಾಷೆಗಳು ಲಭ್ಯವಿದೆ ಎಂದು ಲಾರಾವೆಲ್ಗೆ ಹೇಗೆ ತಿಳಿಯುತ್ತದೆ? ಇದು ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಸ್ಥಳೀಯ ಕಾನ್ಫಿಗರೇಶನ್ ಅನ್ನು ನೋಡುವ ಮೂಲಕ ಇದನ್ನು ಮಾಡುತ್ತದೆ config/app.php
. ಈ ಫೈಲ್ ಅನ್ನು ತೆರೆಯಿರಿ ಮತ್ತು ಈ ಎರಡು ಸಹಾಯಕ ಅರೇ ಕೀಗಳನ್ನು ನೋಡಿ:
/*
|--------------------------------------------------------------------------
| Application Locale Configuration
|--------------------------------------------------------------------------
|
| The application locale determines the default locale that will be used
| by the translation service provider. You are free to set this value
| to any of the locales which will be supported by the application.
|
*/
'locale' => 'en',
/*
|--------------------------------------------------------------------------
| Application Fallback Locale
|--------------------------------------------------------------------------
|
| The fallback locale determines the locale to use when the current one
| is not available. You may change the value to correspond to any of
| the language folders that are provided through your application.
|
*/
'fallback_locale' => 'en',
ಕೀಗಳ ಮೇಲೆ ತೋರಿಸಿರುವ ವಿವರಣೆಗಳು ಸ್ವಯಂ ವಿವರಣಾತ್ಮಕವಾಗಿರಬೇಕು, ಆದರೆ ಸಂಕ್ಷಿಪ್ತವಾಗಿ, ಕೀ locale
ಸ್ಥಳೀಯ ಪೂರ್ವವನ್ನು ಒಳಗೊಂಡಿದೆdefiನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನ ನಿಶ್ (ಕನಿಷ್ಠ, ಕೋಡ್ನಲ್ಲಿ ಬೇರೆ ಯಾವುದೇ ಸ್ಥಳವನ್ನು ಹೊಂದಿಸದಿದ್ದರೆ). ಮತ್ತು fallback_locale
ನಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ನಾವು ಅಸ್ತಿತ್ವದಲ್ಲಿಲ್ಲದ ಸ್ಥಳವನ್ನು ಹೊಂದಿಸಿದರೆ ಅದನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ.
ನಾವು ಈ ಫೈಲ್ ಅನ್ನು ತೆರೆದಿರುವಾಗ, ನಮ್ಮ ಅನುಕೂಲಕ್ಕಾಗಿ ನಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಬೆಂಬಲಿಸುವ ಎಲ್ಲಾ ಸ್ಥಳಗಳನ್ನು ಪಟ್ಟಿ ಮಾಡುವ ಹೊಸ ಕೀಲಿಯನ್ನು ಸೇರಿಸೋಣ. ಸ್ಥಳೀಯ ಸ್ವಿಚರ್ ಅನ್ನು ಸೇರಿಸುವಾಗ ನಾವು ಇದನ್ನು ನಂತರ ಬಳಸುತ್ತೇವೆ. ಆದಾಗ್ಯೂ, ಇದು ಐಚ್ಛಿಕ ಕಾರ್ಯವಾಗಿದೆ ಏಕೆಂದರೆ Laravel ಅದನ್ನು ಮಾಡಲು ನಮಗೆ ಅಗತ್ಯವಿಲ್ಲ.
/*
|--------------------------------------------------------------------------
| Available locales
|--------------------------------------------------------------------------
|
| List all locales that your application works with
|
*/
'available_locales' => [
'English' => 'en',
'Italian' => 'it',
'French' => 'fr',
],
ಈಗ ನಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಮೂರು ಭಾಷೆಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ: ಇಂಗ್ಲಿಷ್, ಇಟಾಲಿಯನ್ ಮತ್ತು ಫ್ರೆಂಚ್.
ಈಗ ನಾವು ಕೆಲಸ ಮಾಡುವ ಎಲ್ಲಾ ಸ್ಥಳಗಳನ್ನು ನಾವು ಸ್ಥಾಪಿಸಿದ್ದೇವೆ, ನಾವು ಮುಂದುವರಿಯಬಹುದು ಮತ್ತು ನಮ್ಮ ಪೂರ್ವ ಸ್ವಾಗತ ಸಂದೇಶವನ್ನು ಭಾಷಾಂತರಿಸಲು ಮುಂದುವರಿಯಬಹುದುdefiರಾತ್ರಿ.
ಫೋಲ್ಡರ್ಗೆ ಹೊಸ ಸ್ಥಳೀಕರಣ ಫೈಲ್ಗಳನ್ನು ಸೇರಿಸುವ ಮೂಲಕ ಪ್ರಾರಂಭಿಸೋಣ resources/lang
. ಮೊದಲು, ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ resources/lang/it.json
ಮತ್ತು ಅನುಗುಣವಾದ ಅನುವಾದಗಳನ್ನು ಈ ಕೆಳಗಿನಂತೆ ಸೇರಿಸಿ:
{
"Welcome to our website": "Benvenuto nel nostro sito web"
}
ಮುಂದೆ, ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ resources/lang/fr.json
:
{
"ನಮ್ಮ ವೆಬ್ಸೈಟ್ಗೆ ಸುಸ್ವಾಗತ": “ನಮ್ಮ ಸೈಟ್ಗೆ ಸುಸ್ವಾಗತ”
}
ನೀವು ನೋಡುವಂತೆ, ನಾವು ಯಾವಾಗಲೂ ಪೂರ್ವ ಸಂದೇಶವನ್ನು ಉಲ್ಲೇಖಿಸುತ್ತೇವೆdefiನಾವು ಫೈಲ್ನಲ್ಲಿ ಸೇರಿಸಿರುವ ನಿಟೊ welcome.blade.php
(ಅದು {{ __('Welcome to our website') }}
) ನಾವು ಫೈಲ್ ಅನ್ನು ರಚಿಸಬೇಕಾಗಿಲ್ಲ ಎಂಬುದಕ್ಕೆ ಕಾರಣ en.json
ಏಕೆಂದರೆ ಪೂರ್ವ ಸೆಟ್ಟಿಂಗ್ ಮೂಲಕ ನಾವು ಯಾವ ಸಂದೇಶಗಳನ್ನು ರವಾನಿಸುತ್ತೇವೆ ಎಂದು Laravel ಈಗಾಗಲೇ ತಿಳಿದಿರುತ್ತದೆdefiಸಮಾರಂಭದಲ್ಲಿ ಮುಗಿಸಿದರು __()
ಅವರು ನಮ್ಮ ಸ್ಥಳೀಯ ಪೂರ್ವdefiನಿಟೊ ಎನ್.
ಈ ಹಂತದಲ್ಲಿ, ಲೊಕೇಲ್ಗಳನ್ನು ಹೇಗೆ ಬದಲಾಯಿಸುವುದು ಎಂದು Laravel ಗೆ ತಿಳಿದಿಲ್ಲ, ಆದ್ದರಿಂದ ಇದೀಗ, ನಾವು ನೇರವಾಗಿ ಮಾರ್ಗದ ಒಳಗೆ ಅನುವಾದಗಳನ್ನು ಮಾಡೋಣ. ಸ್ವಾಗತ ಮಾರ್ಗವನ್ನು ಮೊದಲೇ ಮಾರ್ಪಡಿಸಿdefiಕೆಳಗೆ ತೋರಿಸಿರುವಂತೆ ನಾಶಪಡಿಸಲಾಗಿದೆ:
Route::get('/{locale?}', function ($locale = null) {
if (isset($locale) && in_array($locale, config('app.available_locales'))) {
app()->setLocale($locale);
}
return view('welcome');
});
ನಾವು ಈಗ ನಮ್ಮ ವೆಬ್ಸೈಟ್ಗೆ ಭೇಟಿ ನೀಡಬಹುದು, ಲಭ್ಯವಿರುವ ಯಾವುದೇ ಭಾಷೆಗಳನ್ನು ಮೊದಲ ಮಾರ್ಗ ವಿಭಾಗವಾಗಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಬಹುದು: ಉದಾಹರಣೆಗೆ, localhost/ru
o localhost/fr
. ನೀವು ಸ್ಥಳೀಯ ವಿಷಯವನ್ನು ನೋಡಬೇಕು. ನೀವು ಬೆಂಬಲಿಸದ ಸ್ಥಳವನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸಿದರೆ ಅಥವಾ ಲೊಕೇಲ್ ಅನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸದಿದ್ದರೆ, Laravel ಬಳಸುತ್ತದೆ en
ಪೂರ್ವನಿಯೋಜಿತವಾಗಿdefiನಿತಾ.
ಪ್ರತಿ ಸೈಟ್ ಲಿಂಕ್ಗಾಗಿ ಲೊಕೇಲ್ ಅನ್ನು ಬದಲಾಯಿಸುವುದು ನಿಮಗೆ ಬೇಕಾದಂತೆ ಇರಬಹುದು ಮತ್ತು ಅದು ಕಲಾತ್ಮಕವಾಗಿ ಸ್ವಚ್ಛವಾಗಿ ಕಾಣಿಸದಿರಬಹುದು. ಅದಕ್ಕಾಗಿಯೇ ನಾವು ಭಾಷಾ ಸೆಟ್ಟಿಂಗ್ ಅನ್ನು ವಿಶೇಷ ಭಾಷಾ ಸ್ವಿಚರ್ ಮೂಲಕ ಮಾಡುತ್ತೇವೆ ಮತ್ತು ಅನುವಾದಿತ ವಿಷಯವನ್ನು ಪ್ರದರ್ಶಿಸಲು ಬಳಕೆದಾರರ ಸೆಶನ್ ಅನ್ನು ಬಳಸುತ್ತೇವೆ. ಆದ್ದರಿಂದ, ಒಳಗೆ ಹೊಸ ಮಿಡಲ್ವೇರ್ ಅನ್ನು ರಚಿಸಿ app/Http/Middleware/Localization.php
ಫೈಲ್ ಅಥವಾ ಚಾಲನೆಯಲ್ಲಿರುವ ಮೂಲಕ artisan make:middleware Localization
.
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\App;
use Illuminate\Support\Facades\Session;
class Localization
{
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
* @return mixed
*/
public function handle(Request $request, Closure $next)
{
if (Session::has('locale')) {
App::setLocale(Session::get('locale'));
}
return $next($request);
}
}
ಈ ಮಿಡಲ್ವೇರ್ ಈ ಆಯ್ಕೆಯು ಅಧಿವೇಶನದಲ್ಲಿ ಇದ್ದಲ್ಲಿ ಬಳಕೆದಾರ ಆಯ್ಕೆಮಾಡಿದ ಸ್ಥಳವನ್ನು ಬಳಸಲು Laravel ಗೆ ಸೂಚನೆ ನೀಡುತ್ತದೆ.
ಪ್ರತಿ ವಿನಂತಿಯ ಮೇರೆಗೆ ನಾವು ಇದನ್ನು ಮಾಡಬೇಕಾಗಿರುವುದರಿಂದ, ನಾವು ಇದನ್ನು ಪ್ರಿ ಮಿಡಲ್ವೇರ್ ಸ್ಟಾಕ್ಗೆ ಸೇರಿಸಬೇಕಾಗಿದೆdefiಮುಗಿದಿದೆ app/http/Kernel.php
ಪ್ರತಿ ಇಲ್ಗೆ web
ಮಿಡಲ್ವೇರ್ ಗುಂಪು:
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
\App\Http\Middleware\Localization::class, /* <--- add this */
],
ಮುಂದೆ, ನಾವು ಸ್ಥಳವನ್ನು ಬದಲಾಯಿಸಲು ಮಾರ್ಗವನ್ನು ಸೇರಿಸಬೇಕಾಗಿದೆ. ನಾವು ಮುಚ್ಚುವ ಮಾರ್ಗವನ್ನು ಬಳಸುತ್ತಿದ್ದೇವೆ, ಆದರೆ ನೀವು ಬಯಸಿದರೆ ನಿಮ್ಮ ನಿಯಂತ್ರಕದಲ್ಲಿ ನೀವು ಅದೇ ಕೋಡ್ ಅನ್ನು ಬಳಸಬಹುದು:
Route::get('language/{locale}', function ($locale) {
app()->setLocale($locale);
session()->put('locale', $locale);
return redirect()->back();
});
ಅಲ್ಲದೆ, ನಮ್ಮ ಪೂರ್ವ ಸ್ವಾಗತ ಮಾರ್ಗದಲ್ಲಿ ಈ ಹಿಂದೆ ಸೇರಿಸಲಾದ ಲೊಕೇಲ್ ಟಾಗಲ್ ಅನ್ನು ತೆಗೆದುಹಾಕಲು ಮರೆಯಬೇಡಿdefiರಾತ್ರಿ:
Route::get('/', function () {
return view('welcome');
});
ಒಮ್ಮೆ ಇದನ್ನು ಮಾಡಿದ ನಂತರ, ಬಳಕೆದಾರರು ಪ್ರಸ್ತುತ ಹೊಂದಿಸಲಾದ ಭಾಷೆಯನ್ನು ಬದಲಾಯಿಸುವ ಏಕೈಕ ಮಾರ್ಗವೆಂದರೆ ನಮೂದಿಸುವುದು localhost/language/{locale}
. ದಿ locale
ಆಯ್ಕೆಯನ್ನು ಸೆಷನ್ನಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಬಳಕೆದಾರರು ಎಲ್ಲಿಂದ ಬಂದರು ಎಂದು ಮರುನಿರ್ದೇಶಿಸುತ್ತದೆ (ಪರಿಶೀಲಿಸಿ Localization
ಮಿಡಲ್ವೇರ್). ಇದನ್ನು ಪ್ರಯತ್ನಿಸಲು, ಹೋಗಿ localhost/language/ru
(ನಿಮ್ಮ ಸೆಷನ್ ಕುಕೀ ನಿಮ್ಮ ಬ್ರೌಸರ್ನಲ್ಲಿ ಇರುವವರೆಗೆ) ಮತ್ತು ನೀವು ಅನುವಾದಿಸಿದ ವಿಷಯವನ್ನು ನೋಡುತ್ತೀರಿ. ನೀವು ವೆಬ್ಸೈಟ್ನಲ್ಲಿ ಮುಕ್ತವಾಗಿ ಚಲಿಸಬಹುದು ಅಥವಾ ಪುಟವನ್ನು ರಿಫ್ರೆಶ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಬಹುದು ಮತ್ತು ಆಯ್ಕೆಮಾಡಿದ ಭಾಷೆಯನ್ನು ಸಂರಕ್ಷಿಸಲಾಗಿದೆ ಎಂದು ನೋಡಿ.
URL ಗೆ ಸ್ಥಳೀಯ ಕೋಡ್ಗಳನ್ನು ಹಸ್ತಚಾಲಿತವಾಗಿ ನಮೂದಿಸುವ ಬದಲು ಭಾಷೆಯನ್ನು ಬದಲಾಯಿಸಲು ಬಳಕೆದಾರರು ಕ್ಲಿಕ್ ಮಾಡಬಹುದಾದಂತಹದನ್ನು ನಾವು ಈಗ ರಚಿಸಬೇಕಾಗಿದೆ. ಇದನ್ನು ಮಾಡಲು, ನಾವು ಸರಳವಾದ ಭಾಷಾ ಪರೀಕ್ಷಕವನ್ನು ಸೇರಿಸುತ್ತೇವೆ. ಆದ್ದರಿಂದ, ಹೊಸದನ್ನು ರಚಿಸಿ resources/views/partials/language_switcher.blade.php
ಕೆಳಗಿನ ಕೋಡ್ನೊಂದಿಗೆ ಫೈಲ್:
<div class="flex justify-center pt-8 sm:justify-start sm:pt-0">
@foreach($available_locales as $locale_name => $available_locale)
@if($available_locale === $current_locale)
<span class="ml-2 mr-2 text-gray-700">{{ $locale_name }}</span>
@else
<a class="ml-1 underline ml-2 mr-2" href="language/{{ $available_locale }}">
<span>{{ $locale_name }}</span>
</a>
@endif
@endforeach
</div>
"ಸ್ವಾಗತ" ವೀಕ್ಷಣೆಯಲ್ಲಿ ಹೊಸದಾಗಿ ರಚಿಸಲಾದ ಸ್ವಿಚರ್ ಅನ್ನು ಸೇರಿಸಿ:
<body class="antialiased">
<div class="relative flex items-top justify-center min-h-screen bg-gray-100 dark:bg-gray-900 sm:items-center py-4 sm:pt-0">
<div class="max-w-6xl mx-auto sm:px-6 lg:px-8">
@include('partials/language_switcher')
<div class="flex justify-center pt-8 sm:justify-start sm:pt-0">
{{ __('Welcome to our website') }}
</div>
</div>
</div>
</body>
ತೆರೆಯಿರಿ app/Providers/AppServiceProvider.php
ಫೈಲ್ ಮಾಡಿ ಮತ್ತು ನಮ್ಮ ಭಾಷಾ ಸ್ವಿಚರ್ ಯಾವಾಗ ಸಂಯೋಜನೆಗೊಳ್ಳುತ್ತದೆ ಎಂಬುದನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಕೋಡ್ ಸೇರಿಸಿ. ನಿರ್ದಿಷ್ಟವಾಗಿ, ಫೈಲ್ ಆಗಿ ಪ್ರವೇಶಿಸಬಹುದಾದ ಪ್ರಸ್ತುತ ಸ್ಥಳವನ್ನು ನಾವು ಹಂಚಿಕೊಳ್ಳುತ್ತೇವೆ {{ $current_locale }}
.
ನಾವು ಮುಖ್ಯವಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತೇವೆ resources/views/welcome.blade.php
, ಆದ್ದರಿಂದ ನಿರ್ದಿಷ್ಟಪಡಿಸದ ಹೊರತು ಎಲ್ಲವೂ ನಮ್ಮ ಸ್ವಾಗತಾರ್ಹ ದೃಷ್ಟಿಕೋನದಲ್ಲಿ ನಡೆಯಬೇಕು.
ಉದಾಹರಣೆಗೆ, ಸಾಮಾನ್ಯ ಸಂದೇಶವನ್ನು ಪ್ರದರ್ಶಿಸುವ ಬದಲು ನಮ್ಮ ಕಾಲ್ಪನಿಕ ಬಳಕೆದಾರರಿಗೆ (ಅಮಾಂಡಾ) ಹಲೋ ಹೇಳೋಣ:
{{ __('Welcome to our website, :Name', ['name' => 'caroline']) }}
ನಾವು ಹೆಸರನ್ನು ಮೊದಲ ಅಕ್ಷರದೊಂದಿಗೆ ಸಣ್ಣಕ್ಷರದಲ್ಲಿ ಬಳಸಿದ್ದೇವೆ, ಆದರೆ ದೊಡ್ಡಕ್ಷರದಲ್ಲಿ ಮೊದಲ ಅಕ್ಷರದೊಂದಿಗೆ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ಅನ್ನು ಬಳಸಿದ್ದೇವೆ ಎಂಬುದನ್ನು ಗಮನಿಸಿ. ಈ ರೀತಿಯಾಗಿ, ನಿಜವಾದ ಪದವನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ದೊಡ್ಡದಾಗಿಸಲು Laravel ನಿಮಗೆ ಸಹಾಯ ಮಾಡಬಹುದು. ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ದೊಡ್ಡಕ್ಷರದೊಂದಿಗೆ ಪ್ರಾರಂಭವಾದರೆ ಇದು ಸಂಭವಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ, :Name
"ಕ್ಯಾರೋಲಿನ್" ಅಥವಾ ಸಂಪೂರ್ಣ ದೊಡ್ಡಕ್ಷರ ಪದವನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ, :NAME
, "CAROLINE" ಅನ್ನು ಉತ್ಪಾದಿಸುತ್ತದೆ.
ನಾವು ನಮ್ಮ ಅನುವಾದ ಫೈಲ್ಗಳನ್ನು ಸಹ ನವೀಕರಿಸುತ್ತೇವೆ resources/lang/fr.json
e resources/lang/it.json
, ಭಾಷಾಂತರ ಕೀಲಿಗಳು ಅನುವಾದಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗದ ಕಾರಣ ನಾವು ಸದ್ಯಕ್ಕೆ ಎಲ್ಲಿಯಾದರೂ ಇಂಗ್ಲಿಷ್ ಆವೃತ್ತಿಯನ್ನು ಮಾತ್ರ ನೋಡುತ್ತೇವೆ.
ಫ್ರೆಂಚ್:
{
"Welcome to our website, :Name": "Bienvenue sur notre site, :Name"
}
ಇಟಾಲಿಯನ್:
{
"Welcome to our website, :Name": "Benvenuto sul nostro sito web, :Name"
}
ಕ್ರಿಯೆಯಲ್ಲಿ ಬಹುವಚನವನ್ನು ನೋಡಲು, ಪಠ್ಯದ ಹೊಸ ಪ್ಯಾರಾಗ್ರಾಫ್ ಅನ್ನು ಸೇರಿಸೋಣ.
ಬಹುವಚನವನ್ನು ನಿರ್ವಹಿಸಲು, ನೀವು ಕಾರ್ಯವನ್ನು ಬಳಸಬೇಕು trans_choice
ಬದಲಾಗಿ __()
, ಉದಾಹರಣೆಗೆ:
{{ __('Welcome to our website, :Name', ['name' => 'caroline']) }}
<br>
{{ trans_choice('There is one apple|There are many apples', 2) }}
ನೀವು ನೋಡುವಂತೆ, ಬಹುವಚನ ರೂಪಗಳನ್ನು a ನಿಂದ ಪ್ರತ್ಯೇಕಿಸಲಾಗಿದೆ |
.
ಈಗ, ನಮಗೆ ಬಹು ಬಹುವಚನ ರೂಪಗಳ ಅಗತ್ಯವಿದ್ದರೆ ಏನು?
ಇದು ಸಹ ಸಾಧ್ಯ:
{{ trans_choice('{0} There :form no apples|{1} There :form just :count apple|[2,19] There :form :count apples', 24) }}
ಈ ಸಂದರ್ಭದಲ್ಲಿ, ನಾವು ಸಂಖ್ಯೆಗಳನ್ನು ಅನುಮತಿಸುತ್ತೇವೆ 0
, 1
, ಮತ್ತು ನಿಂದ 2
a 19
, ಮತ್ತು ಅಂತಿಮವಾಗಿ 20 ರಿಂದ. ಸಹಜವಾಗಿ, ನಿಮಗೆ ಅಗತ್ಯವಿರುವಷ್ಟು ನಿಯಮಗಳನ್ನು ನೀವು ಸೇರಿಸಬಹುದು.
ಆದ್ದರಿಂದ ನಾವು ನಮ್ಮ ಬಹುವಚನ ರೂಪಗಳಲ್ಲಿ ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ಗಳನ್ನು ಬಯಸಿದರೆ ಏನು ಮಾಡಬೇಕು?
{{ trans_choice('{0} There :form no apples|{1} There :form just :count apple|[2,19] There :form :count apples', 24, ['form' => 'is']) }}
ಪ್ಲೇಸ್ಹೋಲ್ಡರ್ ಬಳಸಿ ಅಗತ್ಯವಿದ್ದರೆ ನಾವು `ಟ್ರಾನ್ಸ್_ಚಾಯ್ಸ್` ನಲ್ಲಿ ಪಾಸ್ ಮಾಡಿದ ಎಣಿಕೆಯನ್ನು ಸಹ ಬಳಸಬಹುದು :count
ವಿಶೇಷ:
{{ trans_choice('{0} There :form no apples|{1} There :form just :count apple|[2,19] There :form :count apples', 1, ['form' => 'is']) }}
ಅಂತಿಮವಾಗಿ, ಮೂಲ ಅನುವಾದಕ್ಕೆ ನೀವು ಮಾಡಿದ ಯಾವುದೇ ಬದಲಾವಣೆಗಳೊಂದಿಗೆ ನಿಮ್ಮ ಅನುವಾದ ಫೈಲ್ಗಳನ್ನು ನವೀಕರಿಸಲು ಮರೆಯಬೇಡಿ.
ಇಟಾಲಿಯನ್:
{
"Welcome to our website, :Name": "Benvenuto nel nostro sito, :Name",
"{0} There :form no apples|{1} There :form just :count apple|[2,19] There :form :count apples": "{0} Nessuna mela|{1} C'è:count mela|[2,19] Ci sono :count mele"
}
ಫ್ರೆಂಚ್:
{
"Welcome to our website, :Name": "Bienvenue sur notre site, :Name",
"{0} There :form no apples|{1} There :form just :count apple|[2,19] There :form :count apples": "{0} Il n'y a pas de pommes|{1} Il n'y :form :count pomme|[2,19] Il y :form :count pommes"
}
ದಿನಾಂಕಗಳನ್ನು ಪತ್ತೆಹಚ್ಚಲು, ನಾವು ಶಕ್ತಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳುತ್ತೇವೆ ಕಾರ್ಬನ್ , ಇದು ಪೂರ್ವನಿಯೋಜಿತವಾಗಿ Laravel ಜೊತೆಗೆ ಬರುತ್ತದೆdefiನಿತಾ. ಪರಿಶೀಲಿಸಿ ಕಾರ್ಬನ್ ದಸ್ತಾವೇಜನ್ನು ; ನೀವು ಬಹಳಷ್ಟು ಆಸಕ್ತಿದಾಯಕ ವಿಷಯಗಳನ್ನು ಮಾಡಬಹುದು. ಉದಾಹರಣೆಗೆ, ನಾವು ನಮ್ಮ ಸ್ಥಳವನ್ನು ದಿನಾಂಕ ಮತ್ತು ಸಮಯದ ನಿಯಮಗಳೊಂದಿಗೆ ಹೊಂದಿಸಬಹುದು.
ನಮ್ಮ ಸರಳ ಉದಾಹರಣೆಗಾಗಿ, ಆಯ್ಕೆಮಾಡಿದ ಭಾಷೆಗೆ ಸ್ಥಳೀಕರಿಸಿದ ಪ್ರಸ್ತುತ ದಿನಾಂಕವನ್ನು ನಾವು ತೋರಿಸುತ್ತೇವೆ. ನಮ್ಮಲ್ಲಿ routes/web.php
, ನಾವು ಸ್ವಾಗತ ಪುಟದ ಮಾರ್ಗವನ್ನು ನವೀಕರಿಸುತ್ತೇವೆ ಮತ್ತು ಸ್ಥಳೀಕರಿಸಿದ ದಿನಾಂಕ ಸಂದೇಶವನ್ನು ನಮ್ಮದಕ್ಕೆ ರವಾನಿಸುತ್ತೇವೆ view
ಸ್ವಾಗತ:
<?php
Route::get('/', function () {
$today = \Carbon\Carbon::now()
->settings(
[
'locale' => app()->getLocale(),
]
);
// LL is macro placeholder for MMMM D, YYYY (you could write same as dddd, MMMM D, YYYY)
$dateMessage = $today->isoFormat('dddd, LL');
return view('welcome', [
'date_message' => $dateMessage
]);
});
ನವೀಕರಿಸೋಣ resources/views/welcome.blade.php
ದಿನಾಂಕ ಪ್ರದರ್ಶನವನ್ನು ಸೇರಿಸುವುದು, ಹಾಗೆ:
{{ __('Welcome to our website, :Name', ['name' => 'amanda']) }}
<br>
{{ trans_choice('{0} There :form :count apples|{1} There :form just :count apple|[2,19] There :form :count apples', 1, ['form' => 'is']) }}
<br>
{{ $date_message }}
ನ ಮುಖಪುಟದಲ್ಲಿ ಭಾಷೆಯನ್ನು ಬದಲಾಯಿಸಲು ಪ್ರಯತ್ನಿಸಲಾಗುತ್ತಿದೆ localhost
, ದಿನಾಂಕಗಳನ್ನು ಈಗ ಸ್ಥಳೀಕರಿಸಲಾಗಿದೆ ಎಂದು ನಾವು ನೋಡುತ್ತೇವೆ, ಉದಾಹರಣೆಗೆ:
ವಿವಿಧ ದೇಶಗಳಲ್ಲಿ, ಜನರು ಸಂಖ್ಯೆಗಳನ್ನು ಪ್ರತಿನಿಧಿಸಲು ವಿಭಿನ್ನ ಸ್ವರೂಪಗಳನ್ನು ಬಳಸುತ್ತಾರೆ, ಉದಾಹರಣೆಗೆ:
ಆದ್ದರಿಂದ, ನಿಮ್ಮ Laravel ಅಪ್ಲಿಕೇಶನ್ನಲ್ಲಿ ಈ ವ್ಯತ್ಯಾಸಗಳನ್ನು ಪ್ರತಿಬಿಂಬಿಸಲು, ನೀವು ಬಳಸಬಹುದು ಸಂಖ್ಯೆ ಫಾರ್ಮ್ಯಾಟರ್ ಕೆಳಗಿನ ರೀತಿಯಲ್ಲಿ:
<?php
$num = NumberFormatter::create('en_US', NumberFormatter::DECIMAL);
$num2 = NumberFormatter::create('fr', NumberFormatter::DECIMAL);
ನೀವು ನಿರ್ದಿಷ್ಟ ಭಾಷೆಯಲ್ಲಿ ಸಂಖ್ಯೆಯನ್ನು ಬರೆಯಬಹುದು ಮತ್ತು "ನೂರ ಇಪ್ಪತ್ತು ಮೂರು ಸಾವಿರದ ನೂರ ಇಪ್ಪತ್ತು ಮೂರು ಪಾಯಿಂಟ್ ಒಂದು ಎರಡು" ನಂತಹದನ್ನು ಪ್ರದರ್ಶಿಸಬಹುದು:
<?php
$num = NumberFormatter::create('en_US', NumberFormatter::SPELLOUT);
$num2 = NumberFormatter::create('fr', NumberFormatter::SPELLOUT);
ಹೆಚ್ಚುವರಿಯಾಗಿ, ಕರೆನ್ಸಿಗಳನ್ನು ಸುಲಭವಾಗಿ ಪತ್ತೆಹಚ್ಚಲು NumberFormatter ನಿಮಗೆ ಅನುಮತಿಸುತ್ತದೆ, ಉದಾಹರಣೆಗೆ:
<?php
$currency1 = NumberFormatter::create('fr', NumberFormatter::CURRENCY);
$currency2 = NumberFormatter::create('en_US', NumberFormatter::CURRENCY);
ಆದ್ದರಿಂದ fr
ನೀವು ಯುರೋಗಳನ್ನು ನೋಡುತ್ತೀರಿ en_US
ಕರೆನ್ಸಿ US ಡಾಲರ್ಗಳಲ್ಲಿರುತ್ತದೆ.
Ercole Palmeri
ಬಣ್ಣಗಳ ಮೂಲಕ ಉತ್ತಮವಾದ ಮೋಟಾರು ಕೌಶಲ್ಯಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸುವುದು ಬರವಣಿಗೆಯಂತಹ ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ಕೌಶಲ್ಯಗಳಿಗೆ ಮಕ್ಕಳನ್ನು ಸಿದ್ಧಪಡಿಸುತ್ತದೆ. ಬಣ್ಣ ಹಾಕಲು...
ನೌಕಾ ವಲಯವು ನಿಜವಾದ ಜಾಗತಿಕ ಆರ್ಥಿಕ ಶಕ್ತಿಯಾಗಿದೆ, ಇದು 150 ಶತಕೋಟಿ ಮಾರುಕಟ್ಟೆಯತ್ತ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಿದೆ...
ಕಳೆದ ಸೋಮವಾರ, ಫೈನಾನ್ಶಿಯಲ್ ಟೈಮ್ಸ್ ಓಪನ್ ಎಐ ಜೊತೆ ಒಪ್ಪಂದವನ್ನು ಪ್ರಕಟಿಸಿತು. FT ತನ್ನ ವಿಶ್ವ ದರ್ಜೆಯ ಪತ್ರಿಕೋದ್ಯಮಕ್ಕೆ ಪರವಾನಗಿ ನೀಡುತ್ತದೆ…
ಲಕ್ಷಾಂತರ ಜನರು ಸ್ಟ್ರೀಮಿಂಗ್ ಸೇವೆಗಳಿಗೆ ಪಾವತಿಸುತ್ತಾರೆ, ಮಾಸಿಕ ಚಂದಾದಾರಿಕೆ ಶುಲ್ಕವನ್ನು ಪಾವತಿಸುತ್ತಾರೆ. ನೀವು ಎಂಬುದು ಸಾಮಾನ್ಯ ಅಭಿಪ್ರಾಯ…