2010-08-27 60 views
0

我需要一個簡單的功能單詞的字符(例如function_cut)從可變字符切如果字符數是除去大於14 例如當前$用戶具有18個字符,我需要削減4個(無所謂哪一個)。PHP的簡單的功能從

 
$user = "abc123abc123abc123"; 

$user = function_cut($user); 
+0

你是說你只是削減任何4個字符從字符串?你是不是隨機的,或者你是否爲了實現的簡單性而減少了前4個或後4個? – milesmeow 2010-08-27 14:05:54

回答

5

substr

$first_14_characters = substr($string, 0, 14); 
+1

爲什麼選擇投票? – 2010-08-27 14:05:08

+1

+1:反擊倒票,因爲你是第一個回答者,雖然沒有詳細說明。 – shamittomar 2010-08-27 14:06:54

+2

哇。今天艱難的人羣! @Everyone - 無論是否提供示例,第一個說'substr'的​​答案都應該是正確的。繼續! :P – karim79 2010-08-27 14:15:17

0

可以使用substr功能是這樣的:

function cut($str){ 
    return substr($str, 0, 14); 
} 

$user = cut($user); 
echo $user; 
+0

這是錯誤的,它會刪除最後4個字符,無論字符串的長度,並且這顯然不是什麼問題問 – Aillyn 2010-08-27 14:05:33

+1

@Aillyn:你需要再看一遍,沒有錯:) – Sarfraz 2010-08-27 14:06:29

+0

偷偷摸摸的編輯。你有'SUBSTR($海峽,0,-4)''然後SUBSTR($海峽,0,strlen的($ STR)-4)' – Aillyn 2010-08-27 14:09:42

2
+0

缺少分號; – shamittomar 2010-08-27 14:07:27

+2

@shamittomar我很確定OP知道自己添加一個分號。除了你並不總是需要分號 – Aillyn 2010-08-27 14:08:26

+2

任何人都可以解釋downvote的正確答案嗎? – 2ndkauboy 2010-08-27 14:10:01

1
<?php 
    $user = "abc123abc123abc123"; 
    $user = substr($user, 0, 14); 
?> 
+0

@Aillyn,我沒有降低你的答案。我只是向你解釋爲什麼有人這樣做。我回答說,因爲在我發佈的時候,沒有人詳細說明。 – shamittomar 2010-08-27 14:09:59

+0

對不起。它和其他人的答案一樣。我雖然刪除了我的downvote。 – Aillyn 2010-08-27 14:12:10

+1

僅僅因爲兩個人在同一時間寫同一個答案,但一個人提交速度更快,這並不會導致downvote! – 2ndkauboy 2010-08-27 14:16:26

1

所有的解決方案是好的,但如果你有UTF8的數據,你應該使用功能的多字節版本,分別爲mb_substr

function cut($str){ 
    return mb_substr($str, 0, 14); 
}