2017-12-04 31 views
1

私のプロジェクトに別の言語を追加しようとしています。言語翻訳grammer

I am using database table for words. Like this creenshot click to see

私たちは言語が対象と述語の違いを示すことができることを知っています。たとえば :

英語:ムスタファは彼の友人アフメット今日で映画館に行ってきました。

トルコ語:ILE birlikte sinemaya gitti アフメットarkadaşıムスタファbugün。

英語 - トルコ語

今日=>bugün

SINEMA =>シネマ

birlikte =>

とgitti =>

ムスタファを行って、アフメットは、ユーザーからユーザー名です表。私の質問は、どのようにして良い文法でその言葉を示すことができるのですか?

私の言語表に私の例の単語を追加したいのですが、どうすればいいですか?私はこのために例の本を求めています:

$username => Mustafa, 

$friendname => ahmet 

英語:<?php echo $username;?>は彼の友人<?php echo $friendname;?>今日で映画館に行ってきました。

トルコ語:<?php echo $username;?>バークレー語<?php echo $friendname;?> ile birlikte sinemaya gitti。

ご覧のとおり、特殊名は別の場所にあります。それをエコーすることなくテーブルからユーザー名を表示するにはどうすればよいですか?

誰か助けてもらえますか?ありがとうございました。

+2

問題の簡単な解決策はありません。 – Marty

+0

「{{USERNAME}}さんが今日(彼・彼女)の友人と{{FRIENDNAME}}の映画館に行ったようなことをstr_replaceできます。 --- "{{ユーザー名}}バグナンの仲間{{仲間}} ile birikte sinemaya gitti。" – Eddie

+0

$ eddieこれを試しましたが、USERNAMEとFRIENDNAMEが表示されていません。このような単語が表示されます。 '{{USERNAME}}さんが友人の{{FRIENDNAME}}さんと一緒に映画館に行きました – Azzo

答えて

4

定義済みの文章でプレースホルダを使用しない理由

$sentences = array(); 
$sentences[ "en" ] = "{{USERNAME}} went to the cinema with his friend {{FRIENDNAME}} today."; 
$sentences[ "tu" ] = "{{USERNAME}} bugün arkadaşı {{FRIENDNAME}} ile birlikte sinemaya gitti."; 

あなたはEN

echo str_replace($placeHolder, $name, $sentences[ "en" ]); 

がになります印刷することを選択した場合は、アレイ

$placeHolder = [ "{{USERNAME}}", "{{FRIENDNAME}}" ]; 
$name   = [ "Mustafa", "ahmet" ]; 

に名前とプレースホルダを入れて:ムスタファは今日彼の友人のアフメットで映画館に行ってきました。 ムスタファbugünarkadaşıアフメットILE birlikte sinemaya gitti:あなたはTU

echo str_replace($placeHolder, $name, $sentences[ "tu" ]); 

を印刷することを選択した場合

はになります。

+0

あなたは非常に簡単で効果的な方法を教えてくれました。どうもありがとうございます。 – Azzo

+0

'$ placeHolder = [" {{ユーザー名}} "、" {{友人名}} "];'この問題: 'Notice:文字列変換への配列' – Azzo

+0

コードのその部分に問題はありません。たぶん 'str_replace'の部分にある – Eddie

関連する問題