Baştan aşağı yeni ama PHP ve Javascript çok yaptım.BASH: Var = "test"? "1": "2" gibi koşullu değişkenleri destekliyor mu? "2"
Bu PHP'ye bir tür muhterem var mı?
$default = 10;
$var = (!$var) ? $default : $var;
Teşekkür
Baştan aşağı yeni ama PHP ve Javascript çok yaptım.BASH: Var = "test"? "1": "2" gibi koşullu değişkenleri destekliyor mu? "2"
Bu PHP'ye bir tür muhterem var mı?
$default = 10;
$var = (!$var) ? $default : $var;
Teşekkür
Evet, öyle:
var=${var:-10}
bile ile diğer değişkenleri:
unset var
export def=99
echo ${var:-${def}} # gives '99'
export var=7
echo ${var:-${def}} # gives '7'
Evet! Adam sayfasından
:
${parameter:-word}
Use Default Values. If parameter is unset or null, the expansion of word
is substituted. Otherwise, the value of parameter is substituted.
${parameter:=word}
Assign Default Values. If parameter is unset or null, the expansion of word
is assigned to parameter. The value of parameter is then substituted.
Positional parameters and special parameters may not be assigned to in this way.
${parameter:?word}
Display Error if Null or Unset. If parameter is null or unset, the expansion of word (or a message to
that effect if word is not present) is written to the standard error and the shell, if it is not inter‐
active, exits. Otherwise, the value of parameter is substituted.
${parameter:+word}
Use Alternate Value. If parameter is null or unset, nothing is substituted, otherwise the expansion of
word is substituted.
$ default=10
$ var=${var:-$default}
$ echo $var
10
$ var=9
$ var=${var:-$default}
$ echo $var
9
tam olarak bunu koyarak: bir dosya içine http://bash.pastebin.com/f4e14cd53 ve yürütme konsol pencereye hiçbir şey echos yürütme. –
Yanlış bir şey yapmış olmalıyım, aslında işe yarayan –
btw, cevabınız da harikaydı! Ekstra parantezleri beğendim;) –
mükemmel! tam olarak aradığım şey. Emin olmak için * diğer * değişkenleri kullanmanız gerekir. –
Kesin olarak, 'export' burada gerekmez. –