- 先後順序固定缺乏彈性,尤其在多語處理的時候
- 變數定義缺乏語意(%s),在維護時難以閱讀不直覺
後來找到 strtr() 這個函數可以執行多個字串的取代,在變數替換時蠻方便的,可以有效的克服上面的問題,當然根據使用上的需求最好還是包裝一下。
<?php $query = " INSERT INTO `system_uesr` SET `Id` = :id, `Name` = :name "; $bind = array( ":id" => "'1'", ":name" => "'jax'" ); echo strtr($query, $bind); // 結果: // INSERT INTO `system_uesr` // SET `Id` = '1', // `Name` = 'jax'
參考文章:
PHP: strtr - Manual
PHP strtr() 函数
strtr --- 轉換某些字元