2012-04-12 89 views
-5

我要救我的電話號碼在數據庫中像111-111-1111如何保存111-111-1111格式的電話號碼

+0

[你嘗試過什麼( http://mattgemmell.com/2008/12/08/what-have-you-tried/)? – 2012-04-12 07:45:32

+1

@XaviLópez我*看着那個鏈接生病了* – Marty 2012-04-12 07:46:13

+0

老兄掩蓋它... – AlphaMale 2012-04-12 07:46:55

回答

7

你會過得更好斷保持它作爲1111111111在數據庫中,並格式化在PHP方面。

我的意思是,將它作爲數據庫中的乾淨數字(它將佔用更少的空間!),然後,當您從數據庫中檢索數字時,請使用PHP格式化數字,但是您需要。

+0

謝謝,但你能詳細解釋,因爲我是編程新 – user1323790 2012-04-12 07:49:46

+0

@ user1323790保存文本爲在您的數據庫(1111111111)中,並且當您在頁面上實際輸出時擔心格式化。 – Marty 2012-04-12 07:51:30

3

你可能會更好過它存放在3個字段:區域代碼,交換,線(或任何你認爲這個數字的3個部分應該叫

+0

這也給出了很容易在SQL中進行格式化的選項(如果你想),比如'SELECT CONCAT_WS(' - ',areacode,exchange,line)' – danneth 2012-04-12 07:49:24

0
$data = '+11234567890'; 

if( preg_match('/^\+\d(\d{3})(\d{3})(\d{4})$/', $data, $matches)) 
{ 
    $result = $matches[1] . '-' .$matches[2] . '-' . $matches[3]; 
    return $result; 
}