回答
http://www.php.net/manual/en/language.types.string.php#language.types.string.casting
的值可以用(string)鑄造或者strval()函數轉換爲字符串。
對我來說看起來是一樣的。
一個是函數調用,另一個是內部類型轉換。沒有檢查過,我猜想後一個更快幾個週期,但不應該真的有所作爲。
這也包含連接和插值的一些基準:http://leifw.wickland.net/2009/08/performance-of-converting-integer-to.html –
它們通常是可以互換的,因爲PHP使用自動類型轉換,而變量的類型由使用變量的上下文決定。
一些不同之處在於strval($ var)將返回$ var的字符串值,而(string)$ var在評估期間顯式轉換$ var的「類型」。
此外,從手冊中,對於strval()$ var「可以是任何標量類型或實現__toString方法的對象。不能對數組或實現__toString方法的對象使用strval()。 「
正如@Lars(字符串)所提到的,速度通常更快。
「$ var實際上正在改變」類型「 $ var。「:這是錯誤的,因爲只要你不給變量賦值什麼都不會改變它。 「你不能在數組或者沒有實現__toString方法的對象上使用strval()。」那是對的,但是這也適用於'(string)'-cast。這裏沒有什麼不同。 – KingCrunch
我站好了。我已經調整了我的答案,以便更準確。布爾類型頁面上的文檔使用短語「明確轉換」,所以我認爲$ var的類型正在改變,但需要調用settype()。 –
你能提供一個你正在談論的手冊的鏈接嗎? – Pacerier
- 1. 使用strval()返回轉換數字0
- 2. 我應該轉換我的字符串sha1,在Java或PHP?
- 3. 應該使用哪個函數將字符串轉換爲long double?
- 4. 我應該使用轉換操作符來轉換結構嗎?
- 5. 構造函數從字符串VS詞法轉換爲字符串?
- 6. 轉換JSON字符串PHP數組,然後使用PHP數組
- 7. 我應該在sequelize(node.js)中使用轉義字符串嗎?
- 8. 我應該使用空()PHP函數
- 9. 我應該使用哪些php函數?
- 10. PHP轉換字符串
- 11. 轉換字符串與PHP
- 12. PHP - 字符串轉換錢
- 13. CMake的函數字符串轉換爲C字符串字面
- 14. 性能 - 使用字符串構造函數vs使用串聯
- 15. 將字符串轉換爲函數
- 16. jquery字符串函數轉換
- 17. 轉換一個R函數字符串
- 18. js,將字符串轉換爲函數
- 19. 字符串熊貓函數轉換
- 20. 將函數轉換爲字符串
- 21. IBM ICU - 字符串轉換函數
- 22. ctypes:將字符串轉換爲函數?
- 23. 數組到字符串轉換使用函數來轉換數組
- 24. 我應該用什麼PHP函數來切斷一個字符串的結尾?
- 25. 我應該使用什麼方法將int轉換爲字符串?
- 26. 轉換數組字符串不使用破滅()函數
- 27. PHP字符串替換函數
- 28. php數組轉換爲字符串
- 29. PHP字符串數組轉換
- 30. 將PHP字符串轉換爲數組
鑄造和轉換實際上是相同的,但轉換比較起來要慢很多。這是一個基準,它也考慮了連接和插值:http://leifw.wickland.net/2009/08/performance-of-converting-integer-to.html –