日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php中数据类型、数组排序、循环语句、混编、操作本地文件流程、常用API、函数、魔术常量

發布時間:2025/3/15 php 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php中数据类型、数组排序、循环语句、混编、操作本地文件流程、常用API、函数、魔术常量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

php中數據類型:

php中有7種數據類型,分別是:

//1.String字符串,用引號包裹的字符,如:$str = 'hello word';//2.Integer整型,可以是正數或負數,有十進制、十六進制、八進制,不能有小數點、空格、逗號等符號,如:$num = 123;//3.Float浮點型,指帶小數部分或指數形式的數字,如:$num = 5.2;$num2 = 2e;//4.Boolean布爾型,值為true或false,如:$bool = false;//5.Array數組,php中有三種類型數組:數值數組、關聯數組、多維數組,如:$arr = array(1,'2','false');//數值數組,即常見數組$arr = array("name"="jack","age"=18);//關聯數組,帶有指定鍵的數組$arr = array(1,2,array(3,4));//多維數組,包含一個或多個數組的數組//6.Object對象,php中的對象使用class關鍵字聲明類對象,類是可以包含屬性和方法的,如:class Person{// 屬性:$name = 'jack';$age;// 構造方法:function __construct($ages){$this->age=$ages;}// 方法:function say(){echo "{$this->name}---- {$this->age}";}}$per=new Person(20);$per->say();//7.NULL,表示沒有值,如:$nulls = null;

數組排序:

php中提供了多個根據數字或字母對數組進行排序的方法,具體如:

//sort(arr);升序排序//rsort(arr);降序排序//asort(arr);根據關聯數組的值,升序排序//ksort(arr);根據關聯數組的鍵,升序排序//arsort(arr);根據關聯數組的值,降序排序//krsort(arr);根據關聯數組的鍵,降序排序

php中循環語句:

php中提供了while、do-while、for、foreach循環,具體如下:

//while(條件){代碼塊}:當條件成立時執行代碼塊,如:while($num == 1){echo true;}//do{代碼塊}while(條件):先執行至少一次代碼塊,在通過條件判斷是否繼續執行代碼塊,如do{echo 'hello';}while($str == 'hello');//for(初始值,條件,增量){代碼塊}:根據初始值是否滿足條件,滿足則執行代碼塊;不滿足則執行增量再判斷條件,是否要執行代碼塊,依次不斷執行,如:for($i = 0;$i < 5;$i++){echo i;};//foreache($arr as $value){代碼塊;},foreach用于遍歷數組,當為普通數組時$value即為數組元素;當為關聯數組時,$value是數組中的一項,要拿到具體的值需要加下標;或者可以用兩個參數接收數據,此時一個是鍵。另一個是值,如foreach($arr as $value){echo $value;}foreach($arr as $data){echo $data[id];}foreach($arr as $key => $value){echo $key . '---' . $value;}

php中混編:

php中注釋://

//普通嵌入php代碼:<p><?php echo 'hello'; ?></p>//語句混編:<?php if ($age>18){ ?><p>成年人</p><?php }else{ ?><p>未成年</p><?php } ?> <?php if($age > 18): ?><p>成年人</p><?php else: ?><p>未成年</p><?php endif ?>//指令式語句:<?php if(true):echo 'hello';endif;if(true):each 'hello'else:each 'word'endif;?>

php操作本地文件流程:

//1.php中提供了讀取文件的方法,它會把文件內容以字符串的方式返回$str = file_get_contents('文件URL');//2.php提供了解析字符串的方法explode("割開符",字符串),它將解析好的字符串以數組形式返回,需要注意的是:轉移符要用雙引號,否則解析失敗$arrData = explode("\n",str);//3.通過循環將數組中的數據打印出來:foreach($arrData as $data){var_dump($data);};

php中常用API:

API:Application Programming Interface(應運程序編程接口),接口都是提供某種特定能力的實物,特點是有輸入和輸出,在開發時用到的接口稱之為API。任何編程語言本身沒有太多能力,大多數能力來源于API。php它有1000+的內置函數,不是每一個函數都可以直接調用,有的是需要安裝或者調用額外的插件擴展。

方法描述
strtolower(str)將字符串str轉換為小寫
trim(str)去掉字符串兩頭的空格; 去除字符串左邊的空格:ltrim(’ str’);去除字符串右邊的空白格:rtrim('hello ')
substr(str,index)從字符串str的index位開始截取并返回截取的字符串; 截取寬字符集:mb_substr(‘原字符串’,截取的長度)
print_r()輸出數組的每一項的值和 var_dump()相似
strtoupper(str)將str裝換為大寫字母
strpos(str,s)查找字符串str中首次出現的字符s,返回s的位置;寬字符查找 mb_strpos(‘原字符串’,‘要查找的部分’)
str_replace(targstr,repstr,str)替換字符串,將str中的targstr替換成repstr
str_repeat(str,n)重復字符串,將字符str重復n次
explode(’\n’,‘str’)以\n分割字符串str
array_keys(arr)或array_value(arr)獲取關聯數組arr中的鍵或值
array_key_exists(‘key’,arr)判斷arr數組中是否存在key鍵,返回的是一個布爾值
array_unique(arr)去除數組arr中重復的元素
array_push(arr,ele1,ele2,…)將一個或者多個元素追加到arr數組中
array_pop(arr)刪除數組arr中最后一個元素
count(arr)返回數組arr的長度
in_array(ele,arr,boolean)檢測數組arr中是否存在ele元素,存在返回1,否則什么也不反回;參數三是一個布爾值,當為true時表示查找ele數據類型和檢測數組arr數據類型一致
array_search(ele,arr)返回元素ele在數組arr中的鍵(下標)
time()返回的是從1970/1/1號起到現在的秒數值,跟js中毫秒值一個意思,但是這里是秒數,之間的進制是1000
date(時間格式,時間戳)格式化一個時間戳, 這里返回格林威治時間,比起東八區的時間少8小時。為了這個時間是中華人民共和國時間,可以寫入代碼: date_default_timezone_set(‘PRC’)或者配置php.ini文件中 date.timezone = PRC
strtotime(時間字符串)對已有時間字符串做格式化
basename(url,php)返回url路徑中文件名部分,第二個參數可選,表示文件擴展名
dirname()返回路徑中除文件名部分
copy()復制文件
strlen(str)和 mb_strlen(‘寬字符集’)獲取str字符串的長度, 中文屬于寬字符集,每個字占三個字符,strlen()只能獲取拉丁文字符的長度, php中專門給寬字符集添加了一套API----所有的API都是mb_xxx
phpinfo()用于打印php信息的API
uniqid()隨機返回一個不重復的數字
json_decode(json,true)將json格式字符串解析為關聯數組
json_encode(arr)將關聯數組arr裝換為json格式字符串
file_put_contents(‘test.json’,jsonstr)將json格式的字符串替換到test.json文件中
header()設置文件響應頭,可以處理網頁重定向、響應文件格式等,常用于網頁重定向和文件下載
array_splice(arr,index,length)刪除數組arr中索引index開始length長度的元素
pathinfo(path,options)以數組的形式返回路徑path,options有四個關鍵字參數用于返回具體的路徑中某部分,其詳情閱讀官方文檔
list(el1,el2…)=[arr1,arr2…]接收數組中對應位置的每一個元素,常用于已知生日計算年齡
unset(data)刪除data數據
<?php // 處理字符串測試:echo substr('qwe今天rt',1);//we今天rtecho mb_substr('今天去游樂園',2);//去游樂園,這里需要配置php.ini中擴展寬字符集echo strtolower('qweqQFQW');//qweqqfqwecho strtoupper('sfaasfEFE');//SFAASFEFEecho trim(' 今天ee好 ');//今天ee好echo ltrim(' jigage');//jigageecho rtrim(' jin ');//jinecho strpos('werqr','q');//3echo str_replace('123','abc','1234');//abc4echo str_repeat('☆',5);//☆☆☆☆☆echo strlen('hello');//5echo mb_strlen('你好');//2$str='hello world,taday is a beautiful day';print_r(explode(' ',$str));//Array ( [0] => hello [1] => world,it [2] => is [3] => a [4] => beautiful [5] => day )// 處理數組測試:$arr = array('key1'=>'value1','key2'=>'value2','key3'=>'value3',);print_r(array_keys($arr));//Array ( [0] => key1 [1] => key2 [2] => key3 )print_r(array_values($arr));//Array ( [0] => value1 [1] => value2 [2] => value3 )var_dump(array_key_exists('key1',$arr));//bool(true)$arr=array('1','2','1','4');var_dump($arr);//array(4) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "1" [3]=> string(1) "4" }$arra=array_unique($arr);print_r($arra);//Array ( [0] => 1 [1] => 2 [3] => 4 )array_push($arr,3,5,6);print_r($arr);//Array ( [0] => 1 [1] => 2 [2] => 1 [3] => 4 [4] => 3 [5] => 5 [6] => 6 )array_pop($arr);var_dump($arr);//array(3) { [0]=> string(1) "1" [1]=> string(1) "2" [2]=> string(1) "1" }echo count($arr);//4echo in_array('4',$arr);//1echo array_search('4',$arr);//3// 處理時間測試:echo time();//1594333103date_default_timezone_set('PRC');echo date('Y-m-d H:i:s');$time='2019-9-9 21:23:32';$datetime=strtotime($time);echo date('Y年m月d日<b\r>H:i:s',$datetime);//<b\r>中的\是轉譯字符,因為在date中r是個特殊字符// 處理路徑測試:$path = 'E:/web前端/web前端練習/5.php練習/19.字符串常用API/19.字符串常用API.php';echo basename($path)//19.字符串常用API.php?>

創建函數:

php中函數和其他語言中函數基本一致,函數名應該以字母或者下劃線開頭,函數名中可以有數字,如:

//簡單的函數:function hello(){echo 'hello';};//傳入參數的函數,參數可以是多個,中間用逗號隔開即可,如:function sum($a,$b){echo $a + $b;}//有返回值的函數:function getHello(){return 'hello';}

魔術常量:

php中所謂的魔術常量指:在不同的位置,常量的結果不同,它們的寫法不區分大小寫,php中有八個,分別如下:

//1.__LINE__ 返回當前代碼所在行數,此常量放到不同的代碼行,返回不同的代碼行,如:echo __LINE__;//2//2.__FILE__ 返回當前文件的絕對路徑和文件名,如:echo __FILE__;//如:F:\test\index.php//3.__DIR__ 返回當前文件的絕對路徑,如:echo __DIR__;//如:F:\test//4.__FUNCTION__ 返回當前函數的函數名,函數名區分大小寫,如:function myFn(){echo __FUNCTION__;};myFn();//myFn//5.__CLASS__ 返回當前class類的名稱,如:class person {function ech(){echo __CLASS__;}};$per = new person();$per->ech();//person//6.__TRAIT__ 實現代碼復用,php是單繼承的語言(一個子類只能有一個父類),但是通過trait可以實現多繼承,寫法和類相似。如:trait cat {//trait聲明,trait中一般只添加方法,不能實例化一個對象,trait可以嵌套trait,function eat(){echo '吃';};}trait monkey{function run{echo '跑';}};trait dog {use monkey;//嵌套使用traitfunction wo(){echo '旺';};function eat(){echo '吃肉';};};calss Animal{use cat,dog;//使用trait,使用trait用use關鍵字,若要使用多個trait,則在后面用逗號隔開//use cat,dog{當使用多個trait且里面方法有命名相同的時,可以在后面加{},括號里面使用insteadof進行替換://cat::eat insteadof dog; cat中eat方法替換為dog中//dog::eat as dogeat; 或者給dog中的eat方法起別名//}};$animals = new Animal();$animals->eat();//吃$animals->run();//跑//7.___METHOD__ 返回函數名,方法定義的名字,如:function fntest(){echo __METHOD__;};fntest();//fntest//8.__NAMESPACE__ 返回當前命名空間的名稱,如:namespace mydemo;echo __NAMESPACE__//mydemo

提示:本文圖片等素材來源于網絡,若有侵權,請發郵件至郵箱:810665436@qq.com聯系筆者刪除。
筆者:苦海

總結

以上是生活随笔為你收集整理的php中数据类型、数组排序、循环语句、混编、操作本地文件流程、常用API、函数、魔术常量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。