dongyu4455 2018-08-29 15:19
浏览 90
已采纳

PHP-SQL - 国际化和本地化 - Gettext-POedit

I'm creating a site that I want to display in multiple languages for different countries, but this is my first time doing this and not sure what est practices are.

So for all my static text in my code I just wrap it in the translate function and POedit is able to extract the strings.

Then for all my dynamic text that is being generated via PHP from my DB, when I add something new to my DB on the back end, I also do a file_put_contents() into the PO file as well so I have those strings to be translated.

So everything in my database is in english but gets added to my PO file. The issue is I also have a search bar. This searches my DB for various items but can only search in english.

What I am trying to do at the moment is something like this, where I translate the actual input using Google Translate API and search in English:

$term = $_POST['search_text'];
$result = $translate->translate($term, [
    'target' => 'en'
]);
$translation = $result['text'];
$new_term = '%'.$translation.'%';
$params = [$new_term];
$sql = "SELECT * FROM products WHERE product_name LIKE ?";
$stmt = DB::run($sql,$params);

Obviously this isn't perfect because I'm relying on Google to do translate the search terms, but it is picking up the right results in general.

Is there a better way of doing this because this seems like I'm going about it the wrong way. Any help or suggestions with this would be greatly appreciated.

  • 写回答

1条回答 默认 最新

  • dongyi9484 2019-07-31 09:08
    关注

    What I ended up doing was searching in english and seaching with a translation and combining the results so it will hopefully pick up everything.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line