一步一步學習PHP 7 php 字串相關應用

2022-09-28 18:06:14 字數 1921 閱讀 5036

1. 字串的表現形式

在php中,字串有三種表現形式:單引號,雙引號,以及heredoc。

php手冊建議,在一般情況下,盡量使用單引號的字串。如果需要轉義變數,才使用雙引號的字串。如果需要多行顯示,才使用heredoc。

heredoc形式:

複製** **如下:

<?php

$test=<<< foobar

hello world!

hello php!

foobar;

echo $test;

?>

heredoc是有著開始符和結束符的一段文字,在本段程式中為foowww.cppcns.combar,不過個人建議最好使用更複雜的字串,這樣的話可以避免在字串中遇到與其同樣的文字而發生錯誤。

另外,需要注意的一點就是,在heredoc中並非是空格無關的,所以最後一行結尾符一定要在該行開頭(無空格和縮排)。我就因為這個除錯了n久,囧…….

但是在一般應程式設計客棧用中,heredoc不是很常用的。

關於單引號和雙引號的區別,可以參考我之前的文章:

2. 字串的輸出

關於字串的輸出,其實有很多方式,但是在這裡個人認為只介紹有用的三個:

a. echo 這個是最常用的字串的輸出形式,但是在這裡需要知道echo不是函式,而是語言結構,區別是函式都是有返回值的,但是eiccytfymt語言結構是沒有返回值的。當然,這個了解就可以了。

b. printf 這個常用於字串先組合後列印,其實很類似於string.format然後再列印,如果大家學過c語言,一定會這段**很熟悉,就不多做解釋了:

複製** **如下:

<?php

printf('hello %s,i am %d','world',22);

?>

c. print_r,這個函式主要用於除錯,該函式的最大好處是能把一些亂七八糟的東西都列印出來,舉個例子:

複製** **如下:

<?php

class people

public function say() }

$p=new people("kym");

print_r($p);

?>

還可以是:

複製** **如下:

<?php

$arr=array('1'=>'kym','2'=>'sina','3'=>'blog');

print_r($arr);

?>

但是這個函式也有個缺點:

複製** **如下:

<?php

print_r(true);

print_r(false);

?>

結果發現無法正常列印。那麼這時這個函式相對來說就更適合於除錯了。

d. var_dump,這個函式相比於print_r最大的優勢就在於可以列印出true和false。其餘用法一致。

3. 字串的常用函式

指令碼語言一向以字串處理為榮,那麼我就來看下常用的字串eiccytfymt處理函式。我們可以查閱一下php的字串函式庫。

其中,個人認為常用的只有這麼幾個:

複製** **如下:

<?php

$str='hellophp';

md5($str); //md5加密

f strtoupper($str); //轉成大寫

strtolower($str); //轉成小寫

trim($str); //去掉首位的空白

rtrim($str); //去掉右邊的空白

ltrim($str); //去掉左邊的空白

strrev($str); //字串反轉

?>

感覺沒幾個的,一寫起來感覺都很有用,算了,還是看手冊吧。

本文位址:

一步一步學習PHP 2 PHP型別

1.關於大小寫 php內建的函式和結構是不區分大小寫的。如 html head title hellophp title head body php echo hello php echo hello php echo hello php body html 這三者的效果是一樣的。其他,使用者自定義...

一步一步學習PHP 2 PHP型別

1.關於大小寫 php內建的函式和結構是不區分大小寫的。如 複製 如下 hellop echo hello php echo hello php echo hello php tlrgot 程式設計客棧 body 這三者的效果是一樣的。其他,使用者自定義的類名和方法名也是不區分大小寫的。例如 複製 ...

一步一步學習PHP 3 php 函式

1.方法概述 hellophptitle head phpfunction customprint str customprint hello body html j ascript.2.引數的引用傳遞和值傳遞 public void swap int a,int b public void swa...