久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長(zhǎng)資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      20+個(gè)值得收藏的PHP常用小技巧(分享)

      本篇文章給大家分享一些PHP實(shí)際開(kāi)發(fā)中常用的技巧和方法,以讓大家增加摸魚(yú)的時(shí)間,快來(lái)收藏學(xué)習(xí)吧!

      20+個(gè)值得收藏的PHP常用小技巧(分享)

      1、解決跨域問(wèn)題

      public function __construct() {     parent::__construct();     header('Access-Control-Allow-Origin:*');    //跨域 }

      2、json_encode 中文不轉(zhuǎn)碼

      die( json_encode( $result,JSON_UNESCAPED_UNICODE ) );

      3、二維數(shù)組排序

      $users = array(     array('name' => 'xiao1', 'age' => 20),     array('name' => 'xiao2', 'age' => 18),     array('name' => 'xiao3', 'age' => 22) );   /*按照年齡升序*/ //要將age提取出來(lái)存儲(chǔ)到一維數(shù)組里,然后按照age升序排列 $ages= array_column($users, 'age'); array_multisort($ages, SORT_ASC, $users);   /*先按照年齡升序,再按照姓名降序*/ $ages= array_column($users, 'age'); $names = array_column($users, 'name'); array_multisort($ages, SORT_ASC, $names, SORT_DESC, $users);

      4、如果Linux服務(wù)器上php.ini關(guān)閉了錯(cuò)誤提示,導(dǎo)致結(jié)果406,500。打印錯(cuò)誤信息。

      ini_set("display_errors", "On"); error_reporting(E_ALL | E_STRICT);

      5、list 的使用

      //list使用 public function test(){     list($name, $sex) = $this->getInfo();     echo "姓名:{$name},性別:{$sex}"; }   public function getInfo(){     return ['張三', '男']; }   //輸出:姓名:張三,性別:男

      6、函數(shù) array_column()的使用

      $array = [     ['id'=>'99', 'name'=>'九十九'],     ['id'=>'88', 'name'=>'八十八'],     ['id'=>'77', 'name'=>'七十七'], ]; $arr1 = array_column($array, 'name');    //輸出:array (0 => '九十九',1 => '八十八',2 => '七十七',) $arr2 = array_column($array, 'name', 'id');  //輸出:array (  99 => '九十九',  88 => '八十八',  77 => '七十七',)
      • array_column() 與 array_combine() 搭配使用

      $ids = array_column($array, 'id'); $arrayCombine = array_combine($ids, $array); /*$arrayCombine 輸出:  array (       99 => array ( 'id' => '99', 'name' => '九十九', ),       88 => array ( 'id' => '88', 'name' => '八十八', ),       77 => array ( 'id' => '77', 'name' => '七十七', ),   )*/

      7、一維數(shù)組去重,刪除0,null,索引重置

      $array = array(0,1,0,2,null,1,3,4,null,0); $array = array_values(array_unique(array_diff($array, [0, null])));	//去除0,null;去重 var_export($array);   /*輸出: array (   0 => 1,   1 => 2,   2 => 3,   3 => 4, ) */

      8、把秒轉(zhuǎn)為時(shí)分秒

      • 把秒數(shù)轉(zhuǎn)為時(shí)分秒,gmstrftime函數(shù),不過(guò)該函數(shù)僅限于24小時(shí)內(nèi)的秒數(shù)轉(zhuǎn)換。
      $r = gmstrftime('%H:%M:%S',(3600*23)+123); var_export($r); //輸出: '23:02:03'

      9、接口返回

      • 接口正常返回 1 ,異常返回 -1 。如果數(shù)據(jù)為空,是1;-1是參數(shù)異?;蛘哌壿嬪e(cuò)誤。

      10、四舍五入保留2位小數(shù)。

      round($x, 2);

      11、隱藏手機(jī)號(hào)中間4位。

      $num = "13711111111"; $str = substr_replace($num,'****',3,4);

      12、換行變量 PHP_EOL

      使用場(chǎng)景:一個(gè)小小的換行,其實(shí)在不同的平臺(tái)有著不同的實(shí)現(xiàn)。

      本來(lái)在unix世界換行就用/n來(lái)代替,但是windows為了體現(xiàn)他的不同,就用/r/n,更有意思的是在mac中用/r。

      PHP_EOL就是php中已經(jīng)定義好的變量,代表php的換行符。

      這個(gè)變量會(huì)根據(jù)平臺(tái)而變,在windows下會(huì)是/r/n,在linux下是/n,在mac下是/r。

      13、PHP判斷數(shù)組 鍵 是否存在 isset(),array_key_exists(),empty()

      $array = ['a'=>'我是第一個(gè)', 'b'=>'我是第二個(gè)', 'c'=>'我是第三個(gè)', 'f' => null]; if(isset($array['a'])) {     echo 'a存在 '; } else {     echo 'a不存在 '; }  if(array_key_exists('d', $array)) {     echo 'd存在 '; } else {     echo 'd不存在 '; }  if (empty($array['f'])) {     echo 'f不存在'; } else {     echo 'f存在,且不為 null,0,"0",false'; }   //a存在 d不存在 f不存在

      14、引入js的文件,帶參數(shù)?_=1553829159194

      有時(shí)候有些地址后面有個(gè)這樣的參數(shù) ?_=1553829159194

      • http://***/index/index?_=1553829159194
      • 在url后面加一個(gè)timestamp時(shí)間戳,保證每次的url都是變化的,這樣就不會(huì)讀取瀏覽器緩存了。

      15、接口測(cè)試工具

      • 接口測(cè)試工具推薦 postman

      16、如果最后一個(gè)字是“區(qū)”,就刪除。

      $distName = '南山區(qū)'; $lastChar = mb_substr($distName, -1); if($lastChar=='區(qū)'){     $lastChar = mb_substr($distName, 0, -1); } echo $lastChar;

      17、假設(shè)頁(yè)面內(nèi)容如下:

      • 后臺(tái)返回的數(shù)據(jù)結(jié)構(gòu):
      {"eat":["大米","小麥"],"drink":["水","茶"]}
      • 不太好,這樣還要前端對(duì)應(yīng)到相關(guān)字段,eat吃的;drink是喝的。

      • 最好這樣返回:

      [{"name":"吃的","list":["大米","小麥"]},{"name":"喝的","list":["水","茶"]}]

      18、創(chuàng)建0777目錄,mkdir,chmod配合使用

      • 用mkdir創(chuàng)建在windows沒(méi)問(wèn)題,但是在linux使用mkdir創(chuàng)建文件夾會(huì)出現(xiàn)沒(méi)有最大權(quán)限0777的情況;所以要再使用chmod函數(shù),(chmod函數(shù)針對(duì)linux創(chuàng)建文件夾權(quán)限不足的情況)
      //若目錄不存在則創(chuàng)建目錄 $filePath = '../file/20900101'; if(@!file_exists($filePath)){     mkdir($filePath, 0777, true);     chmod($filePath, 0777); }

      19、foreach中引用賦值

      • 代碼
      $temp = [             [ 'id' => 1, 'name' => 'name1', 'age' => 'age1', 'time' => 'time1' ],             [ 'id' => 2, 'name' => 'name2', 'age' => 'age2', 'time' => 'time2' ]         ];  # 清空原數(shù)據(jù) $data = $temp; foreach ($data as &$value){     $value = []; } echo '<pre>'; print_r($data);  # 重置原數(shù)據(jù) $data = $temp; foreach ($data as &$value){     $value = [         'hobby' => 1     ]; } print_r($data);  # 追加原數(shù)據(jù) $data = $temp; foreach ($data as &$value){     $value['hobby'] = 1; } print_r($data);
      • 打印
      Array (     [0] => Array         (         )      [1] => Array         (         )  ) Array (     [0] => Array         (             [hobby] => 1         )      [1] => Array         (             [hobby] => 1         )  ) Array (     [0] => Array         (             [id] => 1             [name] => name1             [age] => age1             [time] => time1             [hobby] => 1         )      [1] => Array         (             [id] => 2             [name] => name2             [age] => age2             [time] => time2             [hobby] => 1         )  )

      20、url生成器

      public function test() { 	$url = self::getUrl('http://www.test.com', ['id' => 3, 'other' => '好的']); 	echo $url . '<br>';     //打?。篽ttp://www.test.com?id=3&other=%E5%A5%BD%E7%9A%84 	echo urldecode($url);   //打?。篽ttp://www.test.com?id=3&other=好的 }  public function getUrl($apiUrl, $param = []){     $param = http_build_query($param);     return $apiUrl . '?' . $param; }

      21、寫(xiě)接口空數(shù)組返回對(duì)象形式

      • $data為空時(shí)強(qiáng)轉(zhuǎn)為 object類(lèi)型后,json_encode的值是{},不強(qiáng)轉(zhuǎn)的話(huà)則是==[]==,是否需要強(qiáng)轉(zhuǎn)看實(shí)際情況
      $data = $data ? $data : (object)$data;

      原文地址:https://juejin.cn/post/6973956902094897189(不定時(shí)更新)

      作者:有上進(jìn)心的東伯雪鷹

      推薦學(xué)習(xí):《PHP視頻教程》

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)