PHP 第十三週函式學習記錄

zerocoder發表於2020-09-13

strpbrk()

作用

strpbrk() 函式在字串中搜尋指定字元中的任意一個。

用法

strpbrk(string,charlist)

註釋

註釋:該函式是區分大小寫的。
該函式返回指定字元第一次出現的位置開始的剩餘部分。如果沒有找到,則返回 FALSE

案例

<?php
echo strpbrk("Hello world!","oe");
?>

結果

ello world!

strpos()

作用

strpos() 函式查詢字串在另一字串中第一次出現的位置(區分大小寫)。

用法

strpos(string,find,start)

註釋

註釋:strpos() 函式是區分大小寫的。
註釋:該函式是二進位制安全的。

案例

<?php
echo strpos("I love php, I love php too!","php");
?>

結果

7

strrchr()

作用

strrchr() 函式查詢字串在另一個字串中最後一次出現的位置,並返回從該位置到字串結尾的所有字元。

用法

strrchr(string,char)

案例

<?php
echo strrchr("Hello world!","world");
?>

結果

world!

strrev()

作用

strrev() 函式反轉字串。

用法

strrev(string)

案例

<?php
echo strrev("Hello World!");
?>

結果

!dlroW olleH

strripos()

作用

strripos() 函式查詢字串在另一字串中最後一次出現的位置(不區分大小寫)。

用法

strripos(string,find,start)

相關函式

  • stripos() - 查詢字串在另一字串中第一次出現的位置(不區分大小寫)
  • strpos() - 查詢字串在另一字串中第一次出現的位置(區分大小寫)
  • strrpos() - 查詢字串在另一字串中最後一次出現的位置(區分大小寫)

案例

<?php
echo strripos("I love php, I love php too!","PHP");
?>

結果

19

strrpos()

作用

strrpos() 函式查詢字串在另一字串中最後一次出現的位置(區分大小寫)。

用法

strrpos(string,find,start)

案例

<?php
echo strrpos("I love php, I love php too!","php");
?>

結果

19

strspn()

作用

strspn() 函式返回在字串中包含 charlist 引數中指定的字元數目。

用法

strspn(string,charlist,start,length)

提示

請使用 strcspn() 函式來返回在找到任何指定的字元之前,在字串查詢的字元數。

案例

<?php
echo strspn("Hello world!","kHlleo");
?>

結果

5

strstr()

作用

strstr() 函式搜尋字串在另一字串中是否存在,如果是,返回該字串及剩餘部分,否則返回 FALSE

用法

strstr(string,search,before_search)

提示

請使用 strcspn() 函式來返回在找到任何指定的字元之前,在字串查詢的字元數。

案例

<?php
echo strstr("Hello world!","world");  // 輸出 world!
?>

結果

world!

strtok()

作用

strtok() 函式把字串分割為更小的字串(標記)。

用法

strtok(string,split)

提示

請使用 strcspn() 函式來返回在找到任何指定的字元之前,在字串查詢的字元數。

案例

按單詞分割字串:
在下面的例項中,請注意,我們僅在第一次呼叫 strtok() 函式時使用了 string 引數。
在首次呼叫後,該函式僅需要 split 引數,這是因為它清楚自己在當前字串中所在的位置。
如需分割一個新的字串,請再次呼叫帶 string 引數的 strtok():

$string = "Hello world. Beautiful day today.";
  $token = strtok($string, " ");

while ($token != false)
    {
    echo "$token<br>";
    $token = strtok(" ");
    }
?>

結果

Hello
world.
Beautiful
day
today.

strtolower()

作用

strtolower() 函式把字串轉換為小寫。

用法

strtolower(string)

相關函式:

  • strtoupper() - 把字串轉換為大寫
  • lcfirst() - 把字串中的首字元轉換為小寫
  • ucfirst() - 把字串中的首字元轉換為大寫
  • ucwords() - 把字串中每個單詞的首字元轉換為大寫

案例

<?php
echo strtolower("Hello WORLD.");
?>

結果

hello world.

strtoupper()

作用

strtoupper() 函式把字串轉換為大寫。

用法

strtoupper(string)

相關函式:

  • strtoupper() - 把字串轉換為大寫
  • lcfirst() - 把字串中的首字元轉換為小寫
  • ucfirst() - 把字串中的首字元轉換為大寫
  • ucwords() - 把字串中每個單詞的首字元轉換為大寫

案例

<?php
echo strtoupper("Hello WORLD!");
?>

結果

HELLO WORLD!

strtr()

作用

strtr() 函式轉換字串中特定的字元。

用法

strtr(string,from,to)
或者
strtr(string,array)

from    必需(除非使用陣列)。規定要改變的字元。
to        必需(除非使用陣列)。規定要改變為的字元。
array    必需(除非使用 from 和 to)。一個陣列,其中的鍵名是原始字元,鍵值是目標字元。

案例

<?php
echo strtr("Hilla Warld","ia","eo");
?>

結果

Hello World

substr()

作用

substr() 函式返回字串的一部分。

用法

substr(string,start,length)

案例

<?php
echo substr("Hello world",6);
?>

結果

world

mb_substr()

作用

mb_substr() 函式返回字串的一部分,之前我們學過 substr() 函式,它只針對英文字元,如果要分割的中文文字則需要使用 mb_substr()。

註釋:如果 start 引數是負數且 length 小於或等於 start,則 length 為 0

用法

mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] ) : string

案例

<?php
echo mb_substr("菜鳥教程", 0, 2);

?>

結果

菜鳥

substr_compare()

作用

substr_compare() 函式從指定的開始位置比較兩個字串。

用法

substr_compare(string1,string2,startpos,length,case)

返回值:

  • 0 - 如果兩字串相等
  • <0 - 如果 string1 (從開始位置 startpos)小於 string2
  • >0 - 如果 string1 (從開始位置 startpos)大於 string2

如果 length 大於或等於 string1 的長度,則該函式返回 FALSE。

案例

<?php
echo substr_compare("Hello world","Hello world",0);
?>

結果

0

substr_count()

作用

substr_count() 函式計運算元串在字串中出現的次數。

用法

substr_count(string,substring,start,length)

案例

<?php
echo substr_count("Hello world. The world is nice","world");
?>

結果

2

substr_replace()

作用

substr_replace() 函式把字串的一部分替換為另一個字串。

用法

substr_replace(string,replacement,start,length)

案例

<?php
echo substr_replace("Hello","world",0);
?>

結果

world

trim()

作用

trim() 函式移除字串兩側的空白字元或其他預定義字元。

用法

trim(string,charlist)

相關函式:

  • ltrim() - 移除字串左側的空白字元或其他預定義字元。
  • rtrim() - 移除字串右側的空白字元或其他預定義字元。

案例

<?php
$str = "Hello World!";
echo $str . PHP_EOL;
echo trim($str,"Hed!");
?>

結果

Hello World!
llo Worl

ucfirst()

作用

ucfirst() 函式把字串中的首字元轉換為大寫。

用法

ucfirst(string)

案例

<?php
echo ucfirst("hello world!");
?> 

結果

Hello world!

ucwords()

作用

ucwords() 函式把字串中每個單詞的首字元轉換為大寫。

用法

ucwords(string)

案例

<?php
echo ucwords("hello world");
?>

結果

Hello World

vfprintf()

作用

vfprintf() 函式把格式化的字串寫到指定的輸出流(例如:檔案或資料庫)。

用法

vfprintf(stream,format,argarray)

案例

<?php
$num1 = 123;
$num2 = 456;
$file = fopen("test.txt","w");
vfprintf($file,"%f%f",array($num1,$num2));
?>

結果

123.000000456.000000

vprintf()

作用

vprintf() 函式輸出格式化的字串。

用法

vprintf(format,argarray)

案例

<?php
$num1 = 123;
$num2 = 456;
vprintf("%f%f",array($num1,$num2));
?>

結果

123.000000456.000000

vsprintf()

作用

vsprintf() 函式把格式化字串寫入變數中。

用法

vsprintf(format,argarray)

案例

<?php
$num1 = 123;
$num2 = 456;
$txt = vsprintf("%f%f",array($num1,$num2));
echo $txt;
?>

結果

123.000000456.000000

wordwrap()

作用

wordwrap() 函式按照指定長度對字串進行折行處理。

用法

wordwrap(string,width,break,cut)

break    可選。規定作為分隔符使用的字元(字串斷開字元)。預設是 "\n"。
cut        可選。規定是否對大於指定寬度的單詞進行折行:
        FALSE - 預設。不折行
        TRUE - 折行

案例

<?php
$str = "An example of a long word is: Supercalifragulistic";
echo wordwrap($str,15,"<br>n",TRUE);
?>

結果

An example of a
long word is:
Supercalifragul
istic

來源

PHP 5 String 函式 | 菜鳥教程

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章