<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • PHP操作文件的技巧

    時間:2024-10-08 19:49:09 PHP 我要投稿
    • 相關(guān)推薦

    PHP操作文件的技巧

      目前在互聯(lián)網(wǎng)有很多網(wǎng)站的開發(fā)都是通過PHP語言來完成的,例如,搜狐、網(wǎng)易和百度等,在這些知名網(wǎng)站的創(chuàng)作開發(fā)中都應(yīng)用到了PHP語言。

    PHP操作文件的技巧

      方法一 while:

      /**

      * Created by PhpStorm.

      * User: Administrator

      * Date: 2015/6/29

      * Time: 17:05

      */

      header("Content-type: text/html; charset=utf-8");

      $f = fopen('data','r');

      //讀取多行數(shù)據(jù) while

      while(!feof($f)){//feof() 函數(shù)檢測是否已到達(dá)文件末尾

      $content = fgets($f);

      echo $content;

      }

      fclose($f);

      方法二 file_get_contents():

      1echo file_get_contents('data');

      PHP排序算法類方法

      四種排序算法的PHP實現(xiàn):

      1) 插入排序(Insertion Sort)的基本思想是:

      每次將一個待排序的記錄,按其關(guān)鍵字大小插入到前面已經(jīng)排好序的子文件中的適當(dāng)位置,直到全部記錄插入完成為止。

      2) 選擇排序(Selection Sort)的基本思想是:

      每一趟從待排序的記錄中選出關(guān)鍵字最小的記錄,順序放在已排好序的子文件的最后,直到全部記錄排序完畢。

      3) 冒泡排序的基本思想是:

      兩兩比較待排序記錄的關(guān)鍵字,發(fā)現(xiàn)兩個記錄的次序相反時即進行交換,直到?jīng)]有反序的記錄為止。

      4) 快速排序?qū)嵸|(zhì)上和冒泡排序一樣,都是屬于交換排序的一種應(yīng)用。所以基本思想和上面的冒泡排序是一樣的。

      PHP處理密碼的方法

      一、MD5

      相信很多PHP開發(fā)者在最先接觸PHP的時候,處理密碼的首選加密函數(shù)可能就是MD5了,我當(dāng)時就是這樣的:

      $password = md5($_POST["password"]);

      上面這段代碼是不是很熟悉?然而MD5的加密方式目前在PHP的江湖中貌似不太受歡迎了,因為它的加密算法實在是顯得有點簡單了,而且很多破解密碼的站點都存放了很多經(jīng)過MD5加密的密碼字符串,所以這里我是非常不提倡還在單單使用MD5來加密用戶的密碼的。

      二、SHA256 和 SHA512

      其實跟前面的MD5同期的還有一個SHA1加密方式的,不過也是算法比較簡單,所以這里就一筆帶過吧。而這里即將要說到的 SHA256 和 SHA512 都是來自于SHA2家族的加密函數(shù),看名字可能你就猜的出來了,這兩個加密方式分別生成256和512比特長度的hash字串。

      他們的使用方法如下:

      $password = hash("sha256", $password);

      PHP內(nèi)置了 hash() 函數(shù),你只需要將加密方式傳給 hash() 函數(shù)就好了。你可以直接指明 sha256 , sha512 , md5 , sha1 等加密方式。

      三、鹽值

      在加密的過程,我們還有一個非常常見的小伙伴:鹽值。對,我們在加密的時候其實會給加密的字符串添加一個額外的字符串,以達(dá)到提高一定安全的目的:

      function generateHashWithSalt($password) {

      $intermediateSalt = md5(uniqid(rand(), true));

      $salt = substr($intermediateSalt, 0, 6);

      return hash("sha256", $password . $salt);

      }

      四、Bcrypt

      如果讓我來建議一種加密方式的話, Bcrypt 可能是我給你推薦的最低要求了,因為我會強烈推薦你后面會說到的 Hashing API ,不過 Bcrypt 也不失為一種比較不錯的加密方式了。

      function generateHash($password) {

      if (defined("CRYPT_BLOWFISH") && CRYPT_BLOWFISH) {

      $salt = '$2y$11$' . substr(md5(uniqid(rand(), true)), 0, 22);

      return crypt($password, $salt);

      }

      }

    【PHP操作文件的技巧】相關(guān)文章:

    php解析ini配置文件07-13

    關(guān)于php面試寶典及PHP面試技巧08-16

    教你用什么軟件打開php文件10-23

    PPT操作技巧10-23

    Linux文件系統(tǒng)操作命令大全07-03

    《PHP字符串操作》收集整理08-08

    關(guān)于編程之PHP常用MySql操作的方法06-26

    MongoDB的PHP驅(qū)動方法與技巧大全09-08

    病毒營銷操作技巧06-07

    cad繪圖操作技巧07-14

    主站蜘蛛池模板: 国产精品免费久久| 国内精品久久久久久久久| 91嫩草亚洲精品| 中文字幕精品无码一区二区 | 精品成人av一区二区三区| 久久99热只有频精品8| 污污网站国产精品白丝袜| 国产精品永久久久久久久久久| 国产成人精品手机在线观看| 日韩精品亚洲专区在线观看| 国产精品区AV一区二区| 亚洲国产精品国自产电影| 97久久超碰国产精品2021| 无码国产精品一区二区免费模式| 久久精品国产精品亚洲人人| 青青草原综合久久大伊人精品| 日韩精品亚洲人成在线观看| 久久人搡人人玩人妻精品首页| 777被窝午夜精品影院| 91麻豆精品国产| 国产精品免费AV片在线观看| 久久亚洲私人国产精品vA| 精品亚洲麻豆1区2区3区| 无码aⅴ精品一区二区三区浪潮| 欧美精品区一级片免费播放| 国产伦精品一区二区三区视频猫咪 | 亚洲欧美精品AAAAAA片| 日韩一区二区精品观看| 免费精品国自产拍在线播放 | 国产精品一二区| 久久r热这里有精品视频| 国产精品久久精品| 精品久久久久久亚洲| 一区二区三区精品| 成人一区二区三区精品| 99久久伊人精品综合观看| 91在线手机精品超级观看| 99精品人妻少妇一区二区| 91精品在线国产| 国模和精品嫩模私拍视频| 日韩一区二区三区精品|