私は人の名前を表示する$ nameを使用する下のスニペットを持っています。名前がない場合は、No name addedと表示されます。変数を何も表示しないようにするにはどうすればいいですか?他文字列を見えないようにするには?
$name = "Name - $variablefromdatabase";
// If $name is empty
if (empty($name)) {
$name = "No Name added";
}
私は人の名前を表示する$ nameを使用する下のスニペットを持っています。名前がない場合は、No name addedと表示されます。変数を何も表示しないようにするにはどうすればいいですか?他文字列を見えないようにするには?
$name = "Name - $variablefromdatabase";
// If $name is empty
if (empty($name)) {
$name = "No Name added";
}
$name = (strlen($varFromDb) > 0) ? "Name - " . $varFromDb : "";
私が正しく質問を理解した場合、ユーザーには名前が設定されていない場合は、何も表示されるべきではない、コメントで述べたように、それはName - {their name}
に表示されます、あなたの現在のコードはしていませんあなたが言うことをしてください。理由は次のとおりです。
$ nameを "Name - $ variablefromdatabase"として初期化します。したがって、$ variablefromdataabaseでも空であり、あなたはまだ "Name - "という文字列で終わるでしょう。これは空ではないと見なされるので、コードは決してifステートメントに入りません。以下はより正確なバージョンです
// If $name is empty
if (empty($variablefromdatabase)) {
$name = "Name - $variablefromdatabase";
} else {
$name = "No Name added"; // or $name = "Name - No Name added"
}
質問の次の部分にあります。データベースから値が返されない場合は、どのように表示することができますか。以下のコードを試してください:
$variablefromdatabase = trim($variablefromdatabase); // just make sure there is no white space
if (! empty($variablefromdatabase)) { // check if an empty value is returned from the database
$name = "Name - $variablefromdatabase"; // not empty, so set the name variable
} else {
$name = ""; // set the name variable to an empty string
}
'if(empty($ name)){...}' ...を削除しますか? – netcoder
あなたのオリジナルコードは、あなたが記述したものを行いません。その部分を最初に修正することを検討してください。 –