連鎖三項条件演算子を含むステートメントを作成するのに問題があります。
明らかに私はそれらを標準的な方法で書くことができますが、なぜそれらが正しく機能していないのかを知ることは有用でしょう。
私がやりたいことの擬似コード:
$featureが's'で終わる場合は、$group=大文字の$featureにします。
$featureが「y」で終わる場合は、$ group=大文字の$featureにする前に、yを削除して「ies」に置き換えます。
$ featureが他の何かで終わる場合は、「s」を追加して、$group=大文字の$featureにします。
私はc-styleifsを使ってみました:
substr($feature,-1) eq 'y' ? $group = uc(chop($feature)).'IES'
: substr($feature,-1) ne 's' ? $group = uc($feature).'S'
: $group = uc($feature);
と
substr($feature,-1) ne 's' ? substr($feature,-1) eq 'y' ? $group = uc(chop($feature)).'IES'
: $group = uc($feature).'S'
: $group = uc($feature);
$ featureにsaye
またはn
、で終わる文字列がある場合、が見つかりません$group = uc($feature).'S'
。変更して使用してみましたが、すでに。で終わっている文字列にeq 's'
余分なものが追加されています。S
s
助けていただければ幸いです。
編集:
これがおかげで機能するものdan1111
です:
$group = substr($feature,-1) ne 's' ? substr($feature,-1) eq 'y' ? uc(chop($feature)).'IES'
: uc($feature).'S'
: uc($feature);