php自學筆記1

PHP(Personal Home Page的縮寫,現已改名Hypertext Preprocessor「超文本預處理器」)靜態web開發:html,內容一成不變動態web開發: php(Zend)、jsp(sun-oracle)、asp(微軟)、asp.net、cgi,             運行在服務器端,由程序決定內容--------------------------------  歷史-------------------------------  用Perl語言編寫的程序,顯示我的履歷,以及統計網頁流量;  用C語言從新編寫,包括能夠訪問數據庫;  PHP1.0版本,提供了訪客留言本、訪客計數器等簡單的功能。  PHP 2版本,有 PHP 的一些雛型,相似 Perl的變量命名方式、表單處理功能、以及嵌入到 HTML 中執行的能力。  PHP 3版本,改名Hypertext Preprocessor, 成立了 Zend Technologies公司 來管理 PHP 的開發。  PHP 四、5使用了第二代的Zend Engine。包含了強化的面向對象、引入PDO(PHP Data Objects存取數據庫的延伸函數庫)。  PHP6 更好的支持web2.0,Unicode支持,強化的面向對象,對xml編程的支持,soap(簡單對象協議) ------------------------------------ 特色 ------------------------------------跨平臺,支持多種數據庫免費(成本低)且是開源代碼(可二次開發)上手快,相對簡單,被嵌入於HTML語言,實用性強,更適合初學者Php 消耗至關少的系統資源,效率高,安全性好面向對象,php徹底能夠用來開發大型商業程序。解釋執行的語言缺點:   安裝複雜,配置繁瑣   數據太靈活,解釋執行,運行時才能暴露程序對錯-----------------------------------------功能-------------------------------------------    PHP 可以生成動態頁面內容    PHP 可以建立、打開、讀取、寫入、刪除以及關閉服務器上的文件    PHP 可以接收表單數據    PHP 可以發送並取回 cookies    PHP 可以添加、刪除、修改數據庫中的數據    PHP 可以限制用戶訪問網站中的某些頁面    PHP 可以對數據進行加密---------------------------------  開發工具ide--------------------------------- 商業版:Zend Studio,PhpEd,Adobe Dreamweaver,PHP Storm 免費版:Eclipse with PDT,NetBeans,Aptana Studio ***c/s與b/sc/s client 客戶端  server 服務器   須要對客戶端機器有要求安全性高效率變低 b/s優點browser 瀏覽器  server 服務器      1.開發成本低   2.管理維護簡單   3.產品升級便利   4.對用戶培訓費用低   5.用戶使用方便,出現故障機率小b/s不足:    1.安全性不足    2.客戶端不能隨心變化,受瀏覽器限制c/s與b/s相反web服務器: 1.爲何須要web服務器?     由於要從服務器取數據或者提交給服務器數據 2.怎樣查看發送或接受到的是什麼?    用httpwatch工具來獲取,有利於咱們瞭解的更加透徹 3.web服務器有哪些?    iis服務器--微軟爲 asp.net服務    lighttpd 德國 輕便、效率高 成熟度低於apache    nginx   俄國 內存少,併發能力強,使用nginx網站用戶有:百度、京東、新浪、網易、騰訊、淘寶等    apache 排名第一最流行,可靠 基於模塊化----------------------------環境配置----------------------------1.安裝web服務器:Apache2.2    (1)下載httpd-2.2.22-win32-x86-no_ssl.msi    (2)瀏覽器中http://localhost  ---> it works即成功    (3)關閉/啓動 進入apache bin  命令行  httpd -k shutdown/restart    (4)默認端口80,查看端口 netstat -an,監聽端口的使用程序 netstat -anb    (5)配置文件 conf下的httpd.conf 能夠修改端口號   【注意】一個端口號只能被一個應用監聽,但一個應用能夠監聽多個端口       bin:      經常使用命令       cgi-bin:  linux下命令       conf       配置       htdocs     存放用戶web工程文件(默認)       manual     手冊       error     錯誤記錄#配置虛擬目錄    <IfModule dir_module>           #DirectoryIndex至關於歡迎頁面               DirectoryIndex index.php index.html           #站點別名             Alias   /mydemo  "E:/mydemo"    </IfModule>#設置訪問權限設置    <Directory "E:/mydemo">            Order allow,deny #先容許全部ip訪問,deny拒絕全部            Allow from all #先看看allow中容許的ip    </Directory>  例如:        Order deny,allow  #先拒絕192.168,而後容許192.168.2.2        deny from 192.168        Allow from 192.168.2.2      結果是拒絕除192.168.2.2之外的以192.168開頭的全部ip#配置虛擬主機   (1)啓用httpd-vhosts.conf       在httpd.conf中去點  Include conf/extra/httpd-vhosts.conf前的#   (2)conf/extra/httpd-vhosts.conf中修改第二個VirtualHost以下       <VirtualHost *:80>           DocumentRoot "E:/mydemo"           #設置歡迎頁面           DirectoryIndex index.php index.html          <Directory />              #不容許別人修改頁面                  AllowOverride None              #設置訪問權限                  Order allow,deny                  Allow from all          </Directory>       </VirtualHost>    (3)修改host訪問    本地  C:\Windows\System32\drivers\etc下的hosts文件,解析ip地址與域名對應關係(localhost即域名)     若是沒有查到域名,去外網dns服務器查找     hosts文件添加  127.0.0.1       higcom                    127.0.0.1      www.sohu.cn2.安裝php開發核心包:   http://php.net下載   修改httpd.conf改 LoadModule php5_module,使apache能檢索到php安裝路徑   修改php.ini   設置php擴展庫路徑extension_dir 爲文件夾ext的路徑   開啓庫功能extension3.安裝ide: phpstorm    在phpstorm中File->Settings->php(languages&Frameworks下的php)    interpreter中選擇php.exe安裝路徑,如G:\web_tools\AppServ\php6\php.exe第一個php程序    <?php    echo "個人第一段 PHP 腳本!"    ?>【注意】1.輸出方法有兩種:echo 和 print  區別:    echo - 可以輸出一個以上的字符串,沒有返回值,速度快    print - 只能輸出一個字符串,並始終返回 1,速度慢    例如:        <?php            echo "輸出","aaa","bbb";            print "打印";        ?>2.輸出服務名 echo $_SERVER["SERVER_SOFTWARE"];3.常見錯誤:  (1) phpstorm中502 bad gateway:無效網關      解決辦法:File->Settings->php(languages&Frameworks下)設置php.exe            或者File—Settings—Build,Execution,Deployment—Debugger修改端口號爲80              (輸入無效,按上下按鈕纔有效,耗時太長,推薦1)         若仍是502,在任務管理器中看是否有php-cgi在工做,結束掉該進程便可。----------------------------------------------------------php運行原理----------------------------------------------------------客戶端發送給服務器一個請求時,若請求資源爲html文件時,服務器直接將html文件發送給客戶端瀏覽器;若請求的是php文件,服務器將php解釋爲標準的html代碼而後再發送給客戶端。
相關文章
相關標籤/搜索