php中sprintf函數用法詳細_PHP教程

來源:互聯網
上載者:User
以前聽老師講過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...]])

一個小例子:

代碼如下 複製代碼

PHP中echo,print,printf,sprintf的區別


$str='let/'s study php!'';
echo $str."
";
$number=print $str."
";
echo $number."
";
$format="%b%c%d";
$number1=printf($format,88,88,88);
echo "
".$number1;
echo "
".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的傳回值

http://www.bkjia.com/PHPjc/628935.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/628935.htmlTechArticle以前聽老師講過sprintf()函數需要使用echo方 法才可以講格式化後的字串顯示輸出,下面我來看一下簡單的方法。 我在閱讀一些資料,書籍...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.