亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

php基礎字符串與數組知識點講解

瀏覽:119日期:2022-06-06 14:32:57
目錄
  • 字符串
    • 打印
    • 字符串–引號
    • 字符串–多行引號
  • 數組-對象
    • 索引數組
    • 關聯數組

字符串

打印

打印函數

echo: 打印值,用于單值
print_r(): 人類可讀方式打印,用于數組
var_dump():打印結構和類型,一般用于對象

數據類型一般分為字符串,數值,布爾,數組

//單值
$data="我是php";
echo $data; // 我是php
$data2 = 123;
echo $data2; // 123
$data3 = true;
echo $data3; // 1
// $data4打印的為空
$data4 = false;
echo $data4; // 

如果使用echo打開布爾類型時,打開true的話,會打印出1,而打開false時,會打印為空

如果使用var_dump()來打印的話,那么就可以正確的打印出來了

$data3 = true;
var_dump($data3); // bool(true)
$data4 = false;
var_dump($data4); // bool(false)

但是如果使用print_r()呢?會打印什么呢?試一下吧

$data3 = true;
$data4 = false;
print_r($data3); // 1
print_r($data4); //

使用print_r()同樣的,跟echo打印的內容是一個的,true為1,false為空

echo只能打印單值,不能打印數組對象;

var_dump()可打印單值,也可打印數組對象;

$arr1 = ["小明","小李","小剛"];
var_dump($arr1); // array(3) { [0]=> string(6) "小明" [1]=> string(6) "小李" [2]=> string(6) "小剛" }

字符串–引號

  • 單引號: 適合無變量,無轉義字符
  • 雙引號: 適合有變量,有轉義字符
$title = "文章標題";
echo "<a href="#" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >$title</a>". "<br>"; // <a href="#" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >$title</a>
echo "<a href="#">$title</a>"; // <a href="#" rel="external nofollow"  rel="external nofollow"  rel="external nofollow" >文章標題</a>

上面的兩條代碼,第二條完整的打印出我想要的內容了

所以,雙引號是可以放變量的,那假如有多行的字符串時,怎么辦呢

字符串–多行引號

如果一個字符串中,有多行的話,就可以使用nowdocheredoc

$title = "三字經";
$str = <<< doc
<h4>$title</h4>
人之初,性本善。性相近,習相遠。
茍不教,性乃遷。教之道,貴以專。
昔孟母,擇鄰處。子不學,斷機杼。
竇燕山,有義方。教五子,名俱揚。
doc;
echo nl2br($str);
// <h4>三字經</h4><br />
// 人之初,性本善。性相近,習相遠。<br />
// 茍不教,性乃遷。教之道,貴以專。<br />
// 昔孟母,擇鄰處。子不學,斷機杼。<br />
// 竇燕山,有義方。教五子,名俱揚。

上面的代碼已正常打印出來

在這里說明一下,doc和結束的doc都可以隨便命名的,但是名稱必須要一樣就可以了,上面的開始doc默認是雙引號的,單引號可自行測試

數組-對象

數組有分索引數組和關聯數組

索引數組

下面定義的$data就是索引數組,中括號里面以=>為區分,左邊數字為索引,右邊為值

$data = [1=>"小明",2=>"小李",3=>"小張",4=>"小剛"];

同樣的,跟javascript類型,數組中的索引可以不寫,那么默認索引將會從0開始

$data = ["小明","小李","小張","小剛"];

那么我們直接輸入看下是怎么樣的

$data = [1=>"小明",2=>"小李",3=>"小張",4=>"小剛"];
print_r($data);
// Array ( [1] => 小明 [2] => 小李 [3] => 小張 [4] => 小剛 )
$data = ["小明","小李","小張","小剛"];
print_r($data);
// Array ( [0] => 小明 [1] => 小李 [2] => 小張 [3] => 小剛 )

可以看出來,輸出的東西是一樣的,只是索引卻不一樣,第一條索引從1開始,第二條從0開始

但是這里我們就會有一個新的需求了,這個數組看起來很費勁,那么我們能不能格式化一下呢

$data = ["小明","小李","小張","小剛"];
$str = print_r($data, true);
echo "<pre>$str</pre>";
// Array
// (
//     [0] => 小明
//     [1] => 小李
//     [2] => 小張
//     [3] => 小剛
// )

這樣就清晰很多了

當然也有另外的方法,比如使用printf(模板,插值):

$data = ["小明","小李","小張","小剛"];
// 這里要說明一下,print_r($str, bool)第二個變量如果為false,直接輸入結果,如果為true,不輸出,直接將結果賦值給一個變量
$str = print_r($data, true);
// %s: string, %d: integer, %f: float
printf("<pre>%s</pre>",$str);
// Array
// (
//     [0] => 小明
//     [1] => 小李
//     [2] => 小張
//     [3] => 小剛
// )

輸出的內容跟上面是一樣的

索引數組解構

$data = ["小明","小李","小張","小剛"];
list($name1, $name2, $name3, $name4) = $data;
echo $name1; // 小明
echo $name4; // 小剛

關聯數組

下面的數組就是關聯數組,打印一下看看

$data = ["name"=>"小明","age"=>18,"job"=>"工程師","address"=>"中國"];
print_r($data);
// Array ( [name] => 小明 [age] => 18 [job] => 工程師 [address] => 中國 )

關聯數組=>左邊的是鍵,右邊的是值

關聯數組解構

$data = ["name"=>"小明","age"=>18,"job"=>"工程師","address"=>"中國"];
["name"=>$name, "age"=>$age, "job"=>$job, "address"=>$address] = $data;
echo $name; // 小明

快速解構關聯數組

$data = ["name"=>"小明","age"=>18,"job"=>"工程師","address"=>"中國"];
extract($data);
printf("%s, %d, %s, %s", $name, $age, $job, $address); // 小明, 18, 工程師, 中國

到此這篇關于php基礎字符串與數組知識點講解的文章就介紹到這了,更多相關php字符串與數組內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: PHP
相關文章:
主站蜘蛛池模板: 蜜桃视频一区二区在线看 | 精品毛片视频 | 日韩欧美视频一区 | 九九99视频在线观看视频观看 | 中文字幕乱码一区三区免费 | 韩国精品一区二区久久 | 精品免费看 | 真实国产乱视频国语 | 日本久色 | 亚洲精品久久久久网站 | 二区视频在线 | 日本三级3本三级带黄 | 国产www在线观看 | 亚州色片| 黄色在线免费观看 | 韩国中文字幕在线观看 | 亚洲综合激情另类图片专区 | 国产精选一区二区 | 污污的免费网站 | 日韩大尺度无遮挡理论片 | 免费在线公开视频 | 欧美专区一区二区三区 | 精品免费久久 | 欧美成人精品手机在线观看 | 91香蕉视频免费 | 亚洲精品国产成人专区 | 国产美女久久久久久久久久久 | 欧美一区二区三区不卡视频 | 黄色网片 | 自拍视频网站 | 亚洲欧美精品一中文字幕 | 久久88香港三级台湾三级中文 | 亚洲一区二区观看 | 亚洲狠狠婷婷综合久久久久网站 | 日韩亚洲精品不卡在线 | 韩国18videos极品 | 久久精品爱国产免费久久 | 国产精品久久久久久福利漫画 | 黄色网址免费看 | 国产一区自拍视频 | 96视频网站|