<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            php語言

            PHP程序員基本知識點

            時間:2025-06-02 23:21:17 php語言 我要投稿
            • 相關推薦

            PHP程序員基本知識點

              PHP程序員有哪些必備知識點?下面是百分網小編精心為大家整理的PHP程序員的基本知識點,希望對大家有幫助,更多內容請關注應屆畢業生網!

            PHP程序員基本知識點

              1.1 HTTP協議中幾個狀態碼的含義:503 500 401 403 404 200 301 302。。。

              200 : 請求成功,請求的數據隨之返回。

              301 : 永久性重定向。

              302 : 暫時行重定向。

              401 : 當前請求需要用戶驗證。

              403 : 服務器拒絕執行請求,即沒有權限。

              404 : 請求失敗,請求的數據在服務器上未發現。

              500 : 服務器錯誤。一般服務器端程序執行錯誤。

              503 : 服務器臨時維護或過載。這個狀態時臨時性的。

              1.2 Include require include_once require_once 的區別.

              處理失敗方式不同:

              require 失敗時會產生一個致命級別錯誤,并停止程序運行。

              include 失敗時只產生一個警告級別錯誤,程序繼續運行。

              include_once/require_once和include/require 處理錯誤方式一樣,

              唯一區別在于當所包含的文件代碼已經存在時候,不在包含。

              1.3 PHP/Mysql中幾個版本的進化史,比如mysql4.0到4.1,PHP 4.x到5.1的重大改進等等。

              1.4 HEREDOC介紹

              一種定義字符串的方法。

              結構:

              <<<。在該提示符后面,要定義個標識符(單獨一行),

              然后是一個新行。接下來是字符串 本身,

              最后要用前面定義的標識符作為結束標志(單獨一行)

              注意:

              標識符的命名也要像其它標簽一樣遵守PHP的規則:

              只能包含字母、數字和下劃線,并且必須以字母和下劃線作為開頭

              1.5 寫出一些php魔幻(術)方法;

              __construct() 實例化類時自動調用。

              __destruct() 類對象使用結束時自動調用。

              __set() 在給未定義的屬性賦值的時候調用。

              __get() 調用未定義的屬性時候調用。

              __isset() 使用isset()或empty()函數時候會調用。

              __unset() 使用unset()時候會調用。

              __sleep() 使用serialize序列化時候調用。

              __wakeup() 使用unserialize反序列化的時候調用。

              __call() 調用一個不存在的方法的時候調用。

              __callStatic()調用一個不存在的靜態方法是調用。

              __toString() 把對象轉換成字符串的時候會調用。比如 echo。

              __invoke() 當嘗試把對象當方法調用時調用。

              __set_state() 當使用var_export()函數時候調用。接受一個數組參數。

              __clone() 當使用clone復制一個對象時候調用。

              1.6 一些編譯php時的configure 參數

              –prefix=/usr/local/php php安裝目錄

              –with-config-file-path=/usr/local/php/etc 指定php.ini位置

              –with-mysql=/usr/local/mysql mysql安裝目錄,對mysql的支持

              –with-mysqli=/usr/local/mysql/bin/mysql_config mysqli文件目錄,優化支持

              –enable-safe-mode 打開安全模式

              –enable-ftp 打開ftp的支持

              –enable-zip 打開對zip的支持

              –with-bz2 打開對bz2文件的支持

              –with-jpeg-dir 打開對jpeg圖片的支持

              –with-png-dir 打開對png圖片的支持

              –with-freetype-dir 打開對freetype字體庫的支持

              –without-iconv關閉iconv函數,種字符集間的轉換

              –with-libxml-dir 打開libxml2庫的支持

              –with-xmlrpc 打開xml-rpc的c語言

              –with-zlib-dir 打開zlib庫的支持

              –with-gd 打開gd庫的支持

              更多可以使用 ./configure help 查看

              1.7 向php傳入參數的三種方法。

              方法一 使用$argc $argv

              方法二 使用getopt函數()

              方法三 提示用戶輸入,然后獲取輸入的參數。有點像C語言

              1.8 (mysql)請寫出數據類型(int char varchar datetime text)的意思; 請問varchar和char有什么區別;

              int : 數值類型

              char : 固定長度字符串類型

              varchar : 可變長度字符串類型

              datetime : 時期時間類型

              text : 文本類型

              varchar和char有什么區別:

              a. char 長度是固定的,不管你存儲的數據是多少他都會都固定的長度。

              而varchar則處可變長度但他要在總長度上加1字符,這個用來存儲位置。

              b. char 固定長度,所以在處理速度上要比varchar快速很多,但是浪費存儲空間,

              所以對存儲不大,但在速度上有要求的可以使用char類型,反之可以用varchar類型來實例。

              1.9 error_reporting 等調試函數使用

              error_reporting() 函數能夠在運行時設置php.ini中 error_reporting 指令。

              所以可以再程序中隨時調節顯示的錯誤級別。

              使用此函數時 display_errors必須是打開狀態。

              1.10 您是否用過版本控制軟件? 如果有您用的版本控制軟件的名字是?

              1.11 posix和perl標準的正則表達式區別;

              1.12 Safe_mode 打開后哪些地方受限.

              啟動safe_mode,會對許多PHP函數進行限制,特別是和系統相關的文件打開、命令執行等函數.

              所有操作文件的函數將只能操作與腳本UID相同的文件.

              1.13 寫代碼來解決多進程/線程同時讀寫一個文件的問題。

              PHP是不支持多線程的,可以使用php的flock加鎖函數實現。

              $fp = fopen("/tmp/lock.txt", "w+");

              if (flock($fp, LOCK_EX)) { // 進行排它型鎖定

              fwrite($fp, "Write something here\n");

              flock($fp, LOCK_UN); // 釋放鎖定

              } else {

              echo "Couldn't lock the file !";

              }

              fclose($fp);

              1.14 寫一段上傳文件的代碼。

              upload.html

              Send this file:

              upload.php

              $uploads_dir = '/uploads';

              foreach ($_FILES["error"] as $key => $error) {

              if ($error == UPLOAD_ERR_OK) {

              $tmp_name = $_FILES["tmp_name"][$key];

              $name = $_FILES["name"][$key];

              move_uploaded_file($tmp_name, "$uploads_dir/$name");

              }

              }

              1.15 Mysql 的存儲引擎,myisam和innodb的區別。

              a. MyISAM類型不支持事務處理等高級處理,而InnoDB類型支持.

              b. MyISAM類型的表強調的是性能,其執行數度比InnoDB類型更快.

              c. InnoDB不支持FULLTEXT類型的索引.

              d. InnoDB 中不保存表的具體行數,也就是說,

              執行select count(*) from table時,InnoDB要掃描一遍整個表來計算有多少行,

              但是MyISAM只要簡單的讀出保存好的行數即可.

              e. 對于AUTO_INCREMENT類型的字段,InnoDB中必須包含只有該字段的索引,但是在MyISAM表中,可以和其他字段一起建立聯合索引。

              f. DELETE FROM table時,InnoDB不會重新建立表,而是一行一行的刪除。

              g. LOAD TABLE FROM MASTER操作對InnoDB是不起作用的,解決方法是首先把InnoDB表改成MyISAM表,導入數據后再改成InnoDB表,

              但是對于使用的額外的InnoDB特性(例如外鍵)的表不適用.

              h. MyISAM支持表鎖,InnoDB支持行鎖。

            【PHP程序員基本知識點】相關文章:

            PHP程序員容易忽略的知識點01-10

            PHP程序員要掌握的知識點05-30

            PHP編程入門的基本語法知識點總結06-22

            PHP程序員基本要求和必備技能06-28

            php程序員05-02

            PHP 基本簡介05-12

            PHP的基本作用02-22

            PHP基本語法06-30

            PHP程序員掌握基本概念有哪些技術06-07

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院