PHP 從 字串 抽出 數字 的程式寫法

PHP 想要將字串中的數字抽出來,要怎麼做呢?

PHP 從 字串 抽出 數字 的程式寫法

以往最常用的方式都是用 pregmatch()、pregreplace()、intval() ... 等等,這次發現 filter_var() 更好用。

preg_match() 的範例

  • preg_match('/([0-9])/', 'xxx 120 ooo', $m); // $m[1] = 120

preg_replace() 的範例

  • preg_replace('/\D/', '', 'xxx 120 ooo'); // 120
  • preg_replace('/\D/', '', 'xxx 1,20 ooo'); // 120

intval() 的範例

  • intval('abc123'); // 0
  • intval('123abc'); // 123
  • 註:數字在前面的就不能用 intval()

filter_var() 的範例

  • echo filter_var('xxx 120 ooo', FILTERSANITIZENUMBERINT); // 120
  • echo filter_var('1,23', FILTERSANITIZENUMBERINT); // 123

作者: Tsung

對新奇的事物都很有興趣, 喜歡簡單的東西, 過簡單的生活.

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料