2016-02-16 73 views
-1

函數str_pad()對字符串有什麼影響? 請向我解釋,因爲我無法理解它在w3schools中的定義。謝謝。PHP str_pad()的清晰定義函數

+5

您可以嘗試使用原生的PHP doco代替:http://php.net/manual/en/function.str-pad.php –

+2

請勿使用w3schools - 請查看http://www.w3fools.com/ – Michael

+0

好的。感謝您的建議。 @Michael – JanLeeYu

回答

1

它使用(可選)另一個字符串將字符串填充到特定長度。

例如

$foo = 'hello world'; // length 11 
echo str_pad($foo, 13); // will echo 'hello world '; 

您還可以添加一個字符串填充

$foo = 'hello world'; 
echo str_pad($foo, 13, 'x'); // will echo 'hello worldxx'; 

而且你可以指定你想要的字符串要被填充

$foo = 'hello world'; 
echo str_pad($foo, 13, 'x', STR_PAD_LEFT); // will echo 'xxhello world'; 

$foo = 'hello world'; 
echo str_pad($foo, 15, 'x', STR_PAD_BOTH); // will echo 'xxhello world'; 

但是,從來沒有使用PHP的w3schools,但嘗試直接從PHP documentation

+0

它有四個參數。他們在做什麼? – JanLeeYu

+0

@JanLeeYu我正在做一個「正在進行」的答案。現在完成;) – DonCallisto

+0

好的謝謝。那是快:) @ DonCallisto – JanLeeYu

1
string str_pad (string input, int pad_length [, string pad_string [, int pad_type]]) 

接下來,str_pad()加入上空間使一個給定字符串(參數之一)的字符(參數2)的X數目。例如:

<?php 
    $string = "Goodbye, Perl!"; 
    $newstring = str_pad($string, 10); 
?> 

該代碼將留在$ newstring,這是從$字符串相同的字符串,除了兩邊有五個空格,相當於我們通過在作爲參數的兩個10「再見,Perl的!」。

Str_pad()有一個可選的第三個參數,可以讓你設置填充字符使用,所以:

<?php 
    $string = "Goodbye, Perl!";> 
    $newstring = str_pad($string, 10, 'a'); 
?> 

這將使 「aaaaaGoodbye,Perl的AAAAA!」 到$ newstring。

我們可以通過使用它是可選的第四個參數來擴展函數,這使得我們可以指定我們希望填充添加到哪一邊。第四個參數指定爲常數,你要麼使用STR_PAD_LEFT,STR_PAD_RIGHT,或STR_PAD_BOTH:

<?php 
    $string = "Goodbye, Perl!"; 
    $a = str_pad($string, 10, '-', STR_PAD_LEFT); 
    $b = str_pad($string, 10, '-', STR_PAD_RIGHT); 
    $c = str_pad($string, 10, '-', STR_PAD_BOTH); 
?> 

該代碼將設置$ a的值是「----------再見,Perl的! 「,$ b是」Goodbye,Perl!----------「,而$ c是」----- Goodbye,Perl!-----「,如預期的那樣。

請注意,HTML在任何時候最多隻允許一個空格。如果您想要放置更多,則需要使用「 」,即非破解空間的HTML代碼。

+0

希望你明白.... JanLeeYu –