bindtextdomain()
(PHP 4, PHP 5, PHP 7)
Sets the path for a domain
说明
bindtextdomain(string $domain,string $directory): string
The bindtextdomain() function sets the path for a domain.
参数
- $domain
The domain
- $directory
The directory path
返回值
The full pathname for the$domaincurrently being set.
范例
bindtextdomain() example
<?php $domain = 'myapp'; echo bindtextdomain($domain, '/usr/share/myapp/locale'); ?>
以上例程会输出:
/usr/share/myapp/locale
I recommend using absolute paths in the $directory parameter. This caused me several hours to debug as Ajax calls to my localization functions messed up the path. And since no error if thrown if the path in $directory cannot be found, one should check the result always: <?php // Imagine the path for this file is "/localization" and your locales are in the "/locale" directory. $pathToDomain = __DIR__ . "/../locale"; if ($pathToDomain != bindtextdomain($domain, $pathToDomain)) { // Error handling. } ?>
The name of your .mo file must match the $domain, e.g. name your files messages.mo and call bindtextdomain("messages", $directory).