二进制下语言包无效,
php webman build:bin 8.1 打包的bin文件。 在打包之后结果无法生效。
Deepin OS
function customTranslator($key, $params = []) {
$locale = locale();
$language = include base_path() . "/resource/translations/{$locale}/messages.php";
$keyArr = explode('.', $key);
foreach ($keyArr as $item) {
$language = $language[$item] ?? "";
}
if (!$language) return $key;
if ($params) {
$language = strtr($language, $params);
}
return $language;
}
function smpTrans($key, $params = []) {
if (strtolower(getenv('RUN_MODE')) === 'bin') {
return customTranslator($key, $params);
}
return trans($key, $params);
}
通过配置文件和自定义函数,暂时解决了问题。
二进制语言包确实用不了,要等更新
新增了一个自定义的方法,判断二进制使用
我也碰到这问题,没看明白你这个方法,能具体点吗
啥时候更新啊
composer require workerman/webman-framework ^v1.5.13
升级重新打包试下感谢
打包后排除掉的文件夹也是这个问题吗,升级可以? https://www.workerman.net/q/10267
v1.5.13只解决打包后语言包不加载的问题,你发的这个问题应该就是路径不对,你要自己调
我在他那个帖子下的回答,base_path()都是用这个路径的