一些新奇的玩意【php篇--持续更新】
人不進步就等于退步!
接觸越多的人以及事就能學到更多的東西。
以下僅為本人記錄的一些新奇的東西,不喜勿噴!
1.??運算符號,在新的項目中突然發現很多紅線報錯,還以為是錯誤!看了下,是??運算的問題,以前樓主沒試過這樣寫過。故寫了一個簡單的測試代碼:
代碼:
1 $b = 0??5; 2 dump($b);其中輸出為5,當講第一行代碼中的0更換為1時候,輸出為1;
2.?:運算符??這個三目運算符并不陌生,但是看到了大神們的杰作,才發現自己當初的真的是做多了很多步驟:
同理,輸出為3,當將0更換為1時候,輸出為1。
3.數組增加元素的新玩法:
之前樓豬在使用數組的時候,通常都是:
1 public function old_array(){ 2 $arr = []; 3 $arr[] = 123; 4 $arr[] = 456; 5 }這樣新增的時候,之前還覺得聽方便的,不用知道數組里面含有多少個元素,不需要管數組的索引。
但是看了一些大神的代碼,感覺自己當初真的是循規蹈矩~~~:
1 $arr = [ 2 1 => '123', 3 3 => '456', 4 4 => '789', 5 ]; 6 dump($arr); 7 $arr += [ 8 2 => '321', 9 5 => '654', 10 ]; 11 dump($arr);這個樣子看起來需要記住所以,但是在一些場合還是挺好用的,例如你需要知道那個中出錯的代碼對應哪一種錯誤信息,輸出的結果為:
?4.php://
種類:php://stdin, php://stdout 和 php://stderr
官方:http://php.net/manual/zh/wrappers.php.php
用戶獲取一些輸入輸出流;例如獲取表單的提交:
demo:
表單:
1 <form action="__SELF__" method="post"> 2 <label>用戶名:</label> 3 <input type="text" name="user" value=""> 4 <label>密碼:</label> 5 <input type="password" name="user" value=""> 6 <input type="button" value="登陸" οnclick="login()"> 7 <input type="submit" value="提交"> 8 </form>后臺獲取:
1 public function table(){ 2 if(IS_POST){ 3 //way 1: 4 dump(file_get_contents('php://input')); 5 //way 2: 6 dump($_POST); 7 } 8 $this->display(); 9 }運行結果:
?
php://input?是個可以訪問請求的原始數據的只讀流。 POST 請求的情況下,最好使用?php://input?來代替?$HTTP_RAW_POST_DATA,因為它不依賴于特定的?php.ini?指令。 而且,這樣的情況下?$HTTP_RAW_POST_DATA?默認沒有填充, 比激活?always_populate_raw_post_data?潛在需要更少的內存。?enctype="multipart/form-data"?的時候?php://input?是無效的。
5.isset($field{num})
用來測試字符串的長度,聽說效率更高~理解為類似字符串的索引吧。
6.
?
?
轉載于:https://www.cnblogs.com/gxkB/p/8317494.html
總結
以上是生活随笔為你收集整理的一些新奇的玩意【php篇--持续更新】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二叉搜索树介绍及其接口说明
- 下一篇: [日常工作]WorkStation 使用