8.5.1 字符串面試題1
一、 不用
PHP函數,用方法寫一個反轉字符串的函數;
1.php
<?php
$str = "hello";
// echo strrev($str);
function fan($str) {
//聲明一個臨時的變量
$n = "";
//獲取字符串長度
$m = strlen($str)-1;
for($i=$m; $i >= 0; $i--) {
$n .= $str{$i};
}
return $n;
}
echo fan($str);
二、 寫一個函數,將一個字符串
(如:1234567890),轉換成(如1,234,567,890)每3位用逗號隔開的形式。
2.php
<?php
$str = "12345678932132";
function nformat($str) {
$n = ""; //臨時的變量
$m = strlen($str); //獲取字符串長度
$k = $m % 3; //讓整個長度和3取余之后余數是多少 = 0
for($i=0; $i < $m; $i++) {
if($i%3 == $k && $i!=0) {
$n .=",";
}
$n .= $str{$i};
}
return $n;
}
echo nformat($str);
test.php
<?php
$str = "12345678932132";
function nformat($str) {
$n = ""; //臨時的變量
$m = strlen($str); //獲取字符串長度
$k = $m % 3; //讓整個長度和3取余之后余數是多少 = 0
for($i=0; $i < $m; $i++) {
if($i%3 == $k && $i!=0) {
$n .=",";
}
$n .= $str{$i};
}
return $n;
}
echo nformat($str);
三、 請寫一個獲取文件擴展名的函數
四、寫一個函數,算出兩個文件的相對路徑
如:
$a=’/a/b/c/d/e.php’
$b=’/a/b/12/34/c.php’
計算出$b相對于$a的相對路徑應該是../../c/d