php中sprintf函數用法詳細
來源:程序員人生 發布時間:2013-11-15 22:47:47 閱讀次數:3626次
以前聽老師講過sprintf()函數需要使用echo方 法才可以講格式化后的字符串顯示輸出,下面我來看一下簡單的方法.
我在閱讀一些資料,書籍的時候總是總是會看到如下這樣的代碼
實例代碼如下:
- $query = sprintf('INSERT INTO %sUSER (USERNAME, PASSWORD, ' .
- 'EMAIL_ADDR, IS_ACTIVE, PERMISSION) VALUES ("%s", "%s", "%s", %d, %d)',
- DB_TBL_PREFIX,
- mysql_real_escape_string($this->username, $GLOBALS['DB']),
- mysql_real_escape_string($this->password, $GLOBALS['DB']),
- mysql_real_escape_string($this->emailAddr, $GLOBALS['DB']),
- $this->isActive,
- $this->permission);
這邊使用了sprintf來格式化字符串,這樣的寫法和直接用字符串連接符連接起來的寫法有什么區別嗎.或者說這樣更加嚴謹
printf()函數與sprintf()函數的語法格式為:
int printf(string $format[,mixed $arg1[,mixed args2...]])
string sprintf(string $format[,mixed $arg1[,mixed args2...]])
一個小例子,實例代碼如下:
- <h3>PHP中echo,print,printf,sprintf的區別</h3>
- <?PHP
- $str='let/'s study php!'';
- echo $str."<br/>";
- $number=print $str."<br/>";
- echo $number."<br/>";
- $format="%b%c%d";
- $number1=printf($format,88,88,88);
- echo "<br/>".$number1;
- echo "<br/>".sprintf($format,88,88,88);
- ?>
echo,print,printf,sprintf的介紹
print輸出方式的返回值為int類型的,返回值永遠是1,print的語法格式如下:
int print(string $str)
echo輸出方式是沒有返回值的,echo的語法格式如下:
void echo(string $str[,string $str1...])
在PHP中,一般情況下echo和print是可以通用的,但是在某些情況下兩種方式也是有區別的,具體表現在:
1)echo支持多個參數,但是print只支持一個參數
2)echo返回值為void,print有一個永遠為1的返回值
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈