Aşağıdaki çıktıyı istiyorum: -
Top-Up hesabınızdan 27.59 € 'nun% 50'sini düşmek üzeredir.
böyle bir şey yaptığımda: -
$variablesArray[0] = '€';
$variablesArray[1] = 27.59;
$stringWithVariables = 'About to deduct 50% of %s %s from your Top-Up account.';
echo vsprintf($stringWithVariables, $variablesArray);
Ama bana bu hata veriyor vsprintf() [function.vsprintf]: Too few arguments in ...
o kabul ettiği için %
in 50%
değiştirilmesi için de. Nasıl kaçarım?
@sandeepan:
—
BoltClock
vsprintf
ile aynı işlev ailesine aittir printf
. Biçimi bulmak için doğru belgeler php.net/sprintf'dir . Her iki sayfa da bunu gösteriyor: "Biçim açıklaması için bkz. Sprintf ()." En azından tıklamadın mı?
@Col. Şarapnel ok tamam php.net/sprintf alalım, cevap nerede? Sayfanın
—
Sandeepan Nath
With printf() and sprintf() functions, escape character is not backslash '\' but rather '%'.
yarısında Buraya oy vermek için ne var? Sana olduğu kadar benim için de o kadar açık değildi. Yinelenen bir soru bulursanız, bağlantıyı daha iyi yazabilirsiniz. Ama eminim ki birçok kişi bu soruyu faydalı bulacaktır. Ama bunu kabul etmeyeceksin ve hala bir şeyler söyleyeceksin, biliyorum.
Ah, ikinci yorumun Col Shrapnel tarafından olduğunu düşündüm, üzgünüm
—
Sandeepan Nath
SO RTFM yanıtları için bir bayrak olmalıdır. Neredeyse insanlar troll gibi, böylece insanlara belgeleri okumasını söyleyebiliyorlar. Yardıma ihtiyacı vardı ve bir soru sordu ve sonra birisi yardımsever bir şekilde cevap verdi ve bunun için puan aldı. Dünya devam etti ve internet birinin yararına kullanıldı. Bu arada iki yıllık bir tartışma üzerinde ısınıyorum.
—
rob5408
escape
veyaescaping
her ikisi dephp.net/printf
vephp.net/vsprintf
ikisi de hemen cevap göstermez. Aradığımda%%
cevabı php.net/printf içinde gösteriyor ama bilmiyordum%%
!!! Cevabı indirmeden önce orada aradınız mı?