導航:首頁 > 編程語言 > mongodbphp教程

mongodbphp教程

發布時間:2024-06-15 19:31:46

1. 我想好好學習php,你會嗎老哥

對於初學者php程序員來說,其實函數參考"那部分不必全看,但是日期與時間、文件系統、其它基本擴展、Session、變數與類型 這幾部分建議一定要翻一下,裡面介紹了很多常用的函數和類。這些函數不必都記住,只要有個印象就行,以後用到時再回來翻,用的多了自然就記住了。先從留言本做起,再做個個人博客,然後再做個復雜點兒的CMS,或者小OA,所謂經驗,其實就是解決問題的方法,從項目中不斷思考,就能不斷收獲!
P.S:自學非常重要,實際項目經驗也很重要。不要以為計算機基礎不重要,學習計算機基礎對學習編程語言非常有用。只要對自己狠一點,多下功夫,沒有攻不破的東西。

php初級程序員如何規劃學習路線:
第一重點:把LNMP搞熟練(核心是安裝配置基本操作)
第二目標:能夠完成基本的LNMP系統安裝,簡單配置維護;能夠做基本的簡單系統的PHP開發;能夠在PHP中型系統中支持某個PHP功能模塊的開發。
基本語法數組、字元串、資料庫、XML、Socket、GD/ImageMgk圖片處理等等;熟悉各種跟MySQL操作鏈接的api(mysql/mysqli/PDO),知道各種編碼問題的解決;知道常規熟練使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等);了解基本MVC的運行機制和為什麼這么做,稍微知道不同的PHP框架之間的區別;能夠快速學習一個MVC框架。能夠知道開發工程中的文件目錄組織,有基本的良好的代碼結構和風格,能夠完成小系統的開發和中型系統中某個模塊的開發工作。
最緊要實戰:
(2周)3個站(至少20個美工頁面)psd to html 切制練習。
(1周)jquery實戰演習
(1月)用zf框架,開發模塊,達到靈活掌握
必須掌握的知識點:
資料庫必須熟練掌握 mysql & sqlserver,同時必須熟練zendstdio的操作。
熟練進行phpmyadmin的操作。
adodb(資料庫介面)+javascript+xml+ajax(非同步JavaScript和XML)+jquery(JS框架),
熟悉OOP編程,學習thinkphp,zf框架,學習smarty模板引擎,pear (PHP擴展與應用庫),prototype(設計模式)。
對apache也應該買本管理員手冊好好看看。
同時大致了解一下linux等等。以及伺服器管理等操作。
首先要清楚自己選擇的方向:
第一:要靜下心來
一般初級PHP程序員工作都比較浮躁,選擇適合自己的學習方向和方式去著手。
第二:要有目標性,
做php編程,沒有目標是不行的,以後是想做程序員,軟體工程師,系統分析,項目經理。給自己定一個規矩向著這個目標一步一步的進前。
P.S:沒目標是不行的! 基礎很重要,不要眼高手低!
其實作為一個PHP程序員有些是一定要求自己會的:
首先是前端工程師:
1. 基礎:HTML教程, CSS教程 2. 進階:Javascript,jQuery
3. 高級:AJAX 教程,JSON 教程,XML 教程
4. 框架擴展學習:Bootstrap 教程,jQuery UI 教程,jQuery EasyUI 教程,jQuery ,Mobile 教程
5. 調試工具:Firebug 教程
6. 開發工具:Dreamweaver,Notepad++,Photoshop
其次PHP工程師:
1. 基礎:HTML教程,PHP 教程 2. 進階:SQL 教程,MySQL 教程
3. 高級:正則表達式教程,Mongodb教程, AJAX 教程,JSON 教程,XML 教程, 4. 開發工具:Notepad++,phpMyAdmin,EasyEclipse for PHP
總結:其實精通無非就是在某個技術上用的精力多,花的時間長,做出的產品質量高。技術出身,至少先會一種編譯型語言,一種解釋型語言,再學一點腳本語言。無論是什麼語言都是實現邏輯思維的一種手段而已。
P.S:php不需要啥經驗,多寫代碼,多做項目,獨立做完整個項目。想進大公司的話,就好好研究基礎知識,學好數據結構跟演算法(雖然很長時間然並卵)。然後這種事急不了,一步一腳印,慢慢積累就好了
個人建議:
想進小公司當全能打雜就不太需要理太過基礎的東西了,前端、後端、伺服器管理、手機端。說起來好像很屌的樣子,但是碰到個啥問題還是很多時候在網上爬資料。從長遠來看肯定是打好基礎,走大公司發展之路更好,要精通就要多鑽研;如果是多拿工資可以進小公司,不過就是需要各方面都會前端設計、後台開發、APP等等全方位的就沒那麼精通了。我有個習慣,就是很喜歡寫方便自己工作的一些工具,一點一點積累,很有意思
P.S:想快速提高就是多做項目,研究優秀的開原項目或者框架代碼,看牛人博客,無他,唯手熟爾。

2. php新手學習路線是怎樣的

第一階段:基礎階段(基礎PHP程序員)

重點:把LNMP搞熟練(核心是安裝配置基本操作) 目標:能夠完成基本的LNMP系統安裝,簡單配置維護;能夠做基本的簡單系統的PHP開發;能夠在PHP中型系統中支持某個PHP功能模塊的開發。

時間:完成本階段的時間因人而異,有的成長快半年一年就過了,成長慢的兩三年也有。

  1. Linux

    基本命令、操作、啟動、基本服務配置(包括rpm安裝文件,各種服務配置等);會寫簡單的shell腳本和awk/sed 腳本命令等。

  2. Nginx

    做到能夠安裝配置nginx+php,知道基本的nginx核心配置選項,知道 server/fastcgi_pass/access_log 等基礎配置,目標是能夠讓nginx+php_fpm順利工作。

  3. MySQL

    會自己搭建mysql,知道基本的mysql配置選項;知道innodb和myisam的區別,知道針對InnoDB和MyISAM兩個引擎的不同配置選項;知道基本的兩個引擎的差異和選擇上面的區別;能夠純手工編譯搭建一個MySQL資料庫並且配置好編碼等正常穩定運行;核心主旨是能夠搭建一個可運行的MySQL資料庫。

  4. PHP

    基本語法數組、字元串、資料庫、XML、Socket、GD/ImageMgk圖片處理等等;熟悉各種跟MySQL操作鏈接的api(mysql/mysqli/PDO),知道各種編碼問題的解決;知道常規熟練使用的PHP框架(ThinkPHP、Zendframework、Yii、Yaf等);了解基本MVC的運行機制和為什麼這么做,稍微知道不同的PHP框架之間的區別;能夠快速學習一個MVC框架。能夠知道開發工程中的文件目錄組織,有基本的良好的代碼結構和風格,能夠完成小系統的開發和中型系統中某個模塊的開發工作。

  5. 前端

    如果條件時間允許,可以適當學習下 HTML/CSS/JS 等相關知識,知道什麼web標准,div+css的web/wap頁面模式,知道HTML5和HTML4的區別;了解一些基本的前端只是和JS框架(jQuery之類的);了解一些基本的JavaScript編程知識;(本項不是必須項,如果有時間,稍微了解一下是可以的,不過不建議作為重點,除非個人有強烈興趣)。

  6. 系統設計

    能夠完成小型系統的基本設計,包括簡單的資料庫設計,能夠完成基本的:瀏覽器 -> Nginx+PHP -> 資料庫 架構的設計開發工作;能夠支撐每天幾十萬到數百萬流量網站的開發維護工作;

    第二階段:提高階段 (中級PHP程序員)

    重點:提高針對LNMP的技能,能夠更全面的對LNMP有熟練的應用。 目標:能夠隨時隨地搭建好LNMP環境,快速完成常規配置;能夠追查解決大部分遇到的開發和線上環境的問題;能夠獨立承擔中型系統的構架和開發工作;能夠在大型系統中承擔某個中型模塊的開發工作。

    1. Linux

    在第一階段的基礎上面,能夠流暢的使用Shell腳本來完成很多自動化的工作;awk/sed/perl 也操作的不錯,能夠完成很多文本處理和數據統計等工作;基本能夠安裝大部分非特殊的Linux程序(包括各種庫、包、第三方依賴等等,比如MongoDB/Redis/Sphinx/Luncene/SVN之類的);了解基本的Linux服務,知道如何查看Linux的性能指標數據,知道基本的Linux下面的問題跟蹤等。

    2. Nginx

    在第一階段的基礎上面,了解復雜一些的Nginx配置;包括 多核配置、events、proxy_pass,sendfile/tcp_*配置,知道超時等相關配置和性能影響;知道nginx除了web server,還能夠承擔代理伺服器、反向靜態伺服器等配置;知道基本的nginx配置調優;知道如何配置許可權、編譯一個nginx擴展到nginx;知道基本的nginx運行原理(master/worker機制,epoll),知道為什麼nginx性能比apache性能好等知識。

    3. MySQL/MongoDB

    在第一階段的基礎上面,在MySQL開發方面,掌握很多小技巧,包括常規SQL優化(group by/order by/rand優化等);除了能夠搭建MySQL,還能夠冷熱備份MySQL數據,還知道影響innodb/myisam性能的配置選項(比如key_buffer/query_cache/sort_buffer/innodb_buffer_pool_size/innodb_flush_log_at_trx_commit等),也知道這些選項配置成為多少值合適;另外也了解一些特殊的配置選項,比如 知道如何搭建mysql主從同步的環境,知道各個binlog_format的區別;知道MySQL的性能追查,包括slow_log/explain等,還能夠知道基本的索引建立處理等知識;原理方面了解基本的MySQL的架構(Server+存儲引擎),知道基本的InnoDB/MyISAM索引存儲結構和不同(聚簇索引,B樹);知道基本的InnoDB事務處理機制;了解大部分MySQL異常情況的處理方案(或者知道哪兒找到處理方案)。條件允許的情況,建議了解一下NoSQL的代表MongoDB資料庫,順便對比跟MySQL的差別,同事能夠在合適的應用場景安全謹慎的使用MongoDB,知道基本的PHP與MongoDB的結合開發。

    4. Redis/Memcached

    在大部分中型系統裡面一定會涉及到緩存處理,所以一定要了解基本的緩存;知道Memcached和Redis的異同和應用場景,能夠獨立安裝 Redis/Memcached,了解Memcahed的一些基本特性和限制,比如最大的value值,知道PHP跟他們的使用結合;Redis了解基本工作原理和使用,了解常規的數據類型,知道什麼場景應用什麼類型,了解Redis的事務等等。原理部分,能夠大概了解Memcached的內存結構(slab機制),redis就了解常用數據類型底層實現存儲結構(SDS/鏈表/SkipList/HashTable)等等,順便了解一下Redis的事務、RDB、AOF等機制更好。

    5. PHP

    除了第一階段的能力,安裝配置方面能夠隨意安裝PHP和各種第三方擴展的編譯安裝配置;了解php-fpm的大部分配置選項和含義(如max_requests/max_children/request_terminate_timeout之類的影響性能的配置),知道mod_php/fastcgi的區別;在PHP方面已經能夠熟練各種基礎技術,還包括各種深入些的PHP,包括對PHP面向對象的深入理解/SPL/語法層面的特殊特性比如反射之類的;在框架方面已經閱讀過最少一個以上常規PHP MVC框架的代碼了,知道基本PHP框架內部實現機制和設計思想;在PHP開發中已經能夠熟練使用常規的設計模式來應用開發(抽象工廠/單例/觀察者/命令鏈/策略/適配器 等模式);建議開發自己的PHP MVC框架來充分讓開發自由化,讓自己深入理解MVC模式,也讓自己能夠在業務項目開發里快速升級;熟悉PHP的各種代碼優化方法,熟悉大部分PHP安全方面問題的解決處理;熟悉基本的PHP執行的機制原理(Zend引擎/擴展基本工作機制)。

    6. C/C++

    開始涉獵一定的C/C++語言,能夠寫基本的C/C++代碼,對基本的C/C++語法熟悉(指針、數組操作、字元串、常規標准API)和數據結構(鏈表、樹、哈希、隊列)有一定的熟悉下;對Linux下面的C語言開發有基本的了解概念,會簡單的makefile文件編寫,能夠使用簡單的GCC/GDB的程序編譯簡單調試工作;對基本的網路編程有大概了解。(本項是為了向更高層次打下基礎)。

    7. 前端

    在第一階段的基礎上面,熟悉基本的HTTP協議(協議代碼200/300/400/500,基本的HTTP交互頭);條件允許,可以在深入寫出稍微優雅的HTML+CSS+JavaScript,或者能夠大致簡單使用某些前端框架(jQuery/YUI/ExtJS/RequireJS/BootStrap之類);如果條件允許,可以深入學習JavaScript編程,比如閉包機制、DOM處理;再深入些可以讀讀jQuery源碼做深入學習。(本項不做重點學習,除非對前端有興趣)。

    8. 系統設計

    能夠設計大部分中型系統的網站架構、資料庫、基本PHP框架選型;性能測試排查處理等;能夠完成類似:瀏覽器 -> CDN(Squid) -> Nginx+PHP -> 緩存 -> 資料庫 結構網站的基本設計開發維護;能夠支撐每天數百萬到千萬流量基本網站的開發維護工作;

    第三階段:高級階段 (高級PHP程序員)

    重點:除了基本的LNMP程序,還能夠在某個方向或領域有深入學習。(縱深維度發展) 目標:除了能夠完成基本的PHP業務開發,還能夠解決大部分深入復雜的技術問題,並且可以獨立設計完成中大型的系統設計和開發工作;自己能夠獨立hold深入某個技術方向,在這塊比較專業。(比如在MySQL、Nginx、PHP、Redis等等任一方向深入研究)

    1. Linux

    除了第二階段的能力,在Linux下面除了常規的操作和性能監控跟蹤,還能夠使用很多高級復雜的命令完成工作(watch/tcpmp/starce/ldd/ar等);在shell腳本方面,已經能夠編寫比較復雜的shell腳本(超過500行)來協助完成很多包括備份、自動化處理、監控等工作的shell;對awk/sed/perl 等應用已經如火純青,能夠隨意操作控制處理文本統計分析各種復雜格式的數據;對Linux內部機制有一些了解,對內核模塊載入,啟動錯誤處理等等有個基本的處理;同時對一些其他相關的東西也了解,比如NFS、磁碟管理等等;

    2. Nginx

    在第二階段的基礎上面,已經能夠把Nginx操作的很熟練,能夠對Nginx進行更深入的運維工作,比如監控、性能優化,復雜問題處理等等;看個人興趣,更多方面可以考慮側重在關於Nginx工作原理部分的深入學習,主要表現在閱讀源碼開始,比如具體的master/worker工作機制,Nginx內部的事件處理,內存管理等等;同時可以學習Nginx擴展的開發,可以定製一些自己私有的擴展;同時可以對Nginx+Lua有一定程度的了解,看看是否可以結合應用出更好模式;這個階段的要求是對Nginx原理的深入理解,可以考慮成為Nginx方向的深入專業者。

    3. MySQL/MongoDB

    在第二階段的基礎上面,在MySQL應用方面,除了之前的基本SQL優化,還能夠在完成一些復雜操作,比如大批量數據的導入導出,線上大批量數據的更改表結構或者增刪索引欄位等等高危操作;除了安裝配置,已經能夠處理更多復雜的MySQL的問題,比如各種問題的追查,主從同步延遲問題的解決、跨機房同步數據方案、MySQL高可用架構等都有涉及了解;對MySQL應用層面,對MySQL的核心關鍵技術比較熟悉,比如事務機制(隔離級別、鎖等)、對觸發器、分區等技術有一定了解和應用;對MySQL性能方面,有包括磁碟優化(SAS遷移到SSD)、伺服器優化(內存、伺服器本身配置)、除了二階段的其他核心性能優化選項(innodb_log_buffer_size/back_log/table_open_cache/thread_cache_size/innodb_lock_wait_timeout等)、連接池軟體選擇應用,對show *(show status/show profile)類的操作語句有深入了解,能夠完成大部分的性能問題追查;MySQL備份技術的深入熟悉,包括災備還原、對Binlog的深入理解,冷熱備份,多IDC備份等;在MySQL原理方面,有更多了解,比如對MySQL的工作機制開始閱讀部分源碼,比如對主從同步(復制)技術的源碼學習,或者對某個存儲引擎(MyISAM/Innodb/TokuDB)等等的源碼學習理解,如果條件允許,可以參考CSV引擎開發自己簡單的存儲引擎來保存一些數據,增強對MySQL的理解;在這個過程,如果自己有興趣,也可以考慮往DBA方向發展。MongoDB層面,可以考慮比如說在寫少讀多的情況開始在線上應用MongoDB,或者是做一些線上的數據分析處理的操作,具體場景可以按照工作來,不過核心是要更好的深入理解RMDBS和NoSQL的不同場景下面的應用,如果條件或者興趣允許,可以開始深入學習一下MongoDB的工作機制。

    4. Redis/Memcached

    在第二階段的基礎上面,能夠更深入的應用和學習。因為Memcached不是特別復雜,建議可以把源碼進行閱讀,特別是內存管理部分,方便深入理解;Redis部分,可以多做一些復雜的數據結構的應用(zset來做排行榜排序操作/事務處理用來保證原子性在秒殺類場景應用之類的使用操作);多涉及aof等同步機制的學習應用,設計一個高可用的Redis應用架構和集群;建議可以深入的學習一下Redis的源碼,把在第二階段積累的知識都可以應用上,特別可以閱讀一下包括核心事件管理、內存管理、內部核心數據結構等充分學習了解一下。如果興趣允許,可以成為一個Redis方面非常專業的使用者。

    5. PHP

    作為基礎核心技能,我們在第二階段的基礎上面,需要有更深入的學習和應用。從基本代碼應用上面來說,能夠解決在PHP開發中遇到95%的問題,了解大部分PHP的技巧;對大部分的PHP框架能夠迅速在一天內上手使用,並且了解各個主流PHP框架的優缺點,能夠迅速方便項目開發中做技術選型;在配置方面,除了常規第二階段會的知識,會了解一些比較偏門的配置選項(php auto_prepend_file/auto_append_file),包括擴展中的一些復雜高級配置和原理(比如memcached擴展配置中的memcache.hash_strategy、apc擴展配置中的apc.mmap_file_mask/apc.slam_defense/apc.file_update_protection之類的);對php的工作機制比較了解,包括php-fpm工作機制(比如php-fpm在不同配置機器下面開啟進程數量計算以及原理),對zend引擎有基本熟悉(vm/gc/stream處理),閱讀過基本的PHP內核源碼(或者閱讀過相關文章),對PHP內部機制的大部分核心數據結構(基礎類型/Array/Object)實現有了解,對於核心基礎結構(zval/hashtable/gc)有深入學習了解;能夠進行基本的PHP擴展開發,了解一些擴展開發的中高級知識(minit/rinit等),熟悉php跟apache/nginx不同的通信交互方式細節(mod_php/fastcgi);除了開發PHP擴展,可以考慮學習開發Zend擴展,從更底層去了解PHP。

    6. C/C++

    在第二階段基礎上面,能夠在C/C++語言方面有更深入的學習了解,能夠完成中小型C/C++系統的開發工作;除了基本第二階段的基礎C/C++語法和數據結構,也能夠學習一些特殊數據結構(b-tree/rb-tree/skiplist/lsm-tree/trie-tree等)方便在特殊工作中需求;在系統編程方面,熟悉多進程、多線程編程;多進程情況下面了解大部分多進程之間的通信方式,能夠靈活選擇通信方式(共享內存/信號量/管道等);多線程編程能夠良好的解決鎖沖突問題,並且能夠進行多線程程序的開發調試工作;同時對網路編程比較熟悉,了解多進程模型/多線程模型/非同步網路IO模型的差別和選型,熟悉不同非同步網路IO模型的原理和差異(select/poll/epoll/iocp等),並且熟悉常見的非同步框架(ACE/ICE/libev/libevent/libuv/Boost.ASIO等)和使用,如果閑暇也可以看看一些國產自己開發的庫(比如muo);同時能夠設計好的高並發程序架構(leader-follow/master-worker等);了解大部分C/C++後端Server開發中的問題(內存管理、日誌列印、高並發、前後端通信協議、服務監控),知道各個後端服務RPC通信問題(struct/http/thirft/protobuf等);能夠更熟絡的使用GCC和GDB來開發編譯調試程序,在線上程序core掉後能夠迅速追查跟蹤解決問題;通用模塊開發方面,可以積累或者開發一些通用的工具或庫(比如非同步網路框架、日誌庫、內存池、線程池等),不過開發後是否應用要謹慎,省的埋坑去追bug。

    7. 前端

    深入了解HTTP協議(包括各個細致協議特殊協議代碼和背後原因,比如302靜態文件緩存了,502是nginx後面php掛了之類的);除了之前的前端方面的各種框架應用整合能力,前端方面的學習如果有興趣可以更深入,表現形式是,可以自己開發一些類似jQuery的前端框架,或者開發一個富文本編輯器之類的比較瑣碎考驗JavaScript功力。

    8. 其他領域語言學習

    在基礎的PHP/C/C++語言方面有基本積累,建議在當前階段可以嘗試學習不同的編程語言,看個人興趣愛好,腳本類語言可以學學 Python/Ruby 之類的,函數式編程語言可以試試 Lisp/Haskell/Scala/Erlang 之類的,靜態語言可以試試 Java/Golang,數據統計分析可以了解了解R語言,如果想換個視角做後端業務,可以試試 Node.js還有前面提到的跟Nginx結合的Nginx_Lua等。學習不同的語言主要是提升自己的視野和解決問題手段的差異,比如會了解除了進程/線程,還有輕量級協程;比如在跨機器通信場景下面,Erlang的解決方案簡單的驚人;比如在不想選擇C/C++的情況下,還有類似高效的Erlang/Golang可用等等;主要是提升視野。

    9. 其他專業方向學習

    在本階段裡面,會除了基本的LNMP技能之外,會考慮一些其他領域知識的學習,這些都是可以的,看個人興趣和長期的目標方向。目前情況能夠選擇的領域比較多,比如、雲計算(分布式存儲、分布式計算、虛擬機等),機器學習(數據挖掘、模式識別等,應用到統計、個性化推薦),自然語言處理(中文分詞等),搜索引擎技術、圖形圖像、語音識別等等。除了這些高大上的,也有很多偏工程方面可以學習的地方,比如高性能系統、移動開發(Android/IOS)、計算機安全、嵌入式系統、硬體等方向。

    10. 系統設計

    系統設計在第二階段的基礎之上,能夠應用掌握的經驗技能,設計出比較復雜的中大型系統,能夠解決大部分線上的各種復雜系統的問題,完成類似 瀏覽器 -> CDN -> 負載均衡 ->接入層 -> Nginx+PHP -> 業務緩存 -> 資料庫 -> 各路復雜後端RPC交互(存儲後端、邏輯後端、反作弊後端、外部服務) -> 更多後端 醬紫的復雜業務;能夠支撐每天數千萬到數億流量網站的正常開發維護工作。

3. 求助安裝 php mongo 擴展

Windows安裝PHP MongoDB擴展
本文將講述一下在Wamp環境下安裝MongoDB擴展的過程,大家可以略作參考
Linux 版本的可以參考之前發布的Linux安裝PHP MongoDB擴展
安裝環境
系統環境:Windows 7 64位
Apache版本:2.4.9
PHP版本:5.5.12
MongoDB版本:3.2.6
Wamp版本:wamp 2.5 64位
在windows下安裝mongodb的擴展比Linux環境稍微復雜點
安裝步驟
一、確定php的compiler
通過查看phpinfo()可以確定
可以看到,Compiler是VC11
二、確定php是否是線程安全版本
通過查看phpinfo()可以確定
如果是enabled,則說明是Thread safety版本
三、下載對應的php-mongodb版本
根據前面所得到的信息,需要下載同時符合php5.5,VC11,ts(thread safety),64位的擴展
一般來說,官網的資料是最新和最全的,推薦到官網去下載。下載地址是:http://windows.php.net/downloads/pecl/releases/mongo/。我選擇的是1.6.10版本的
下載php_mongo-1.6.10-5.5-ts-vc11-x64.zip回來,把裡面的php-mongo.dll復制到php的插件目錄下,我本機是:D:\wamp\bin\php\php5.5.12\ext
四、在系統環境變數中加入libsasl.dll的所在路徑
根據http://php.net/manual/en/mongo.installation.php的介紹,安裝mongo擴展需要依賴libsasl.dll, 所以要在系統環境變數中加入該目錄。該目錄一般是php的根目錄。在wamp 2.5下,如果wamp的安裝盤是D盤,該目錄的位置大概是D:\wamp\bin\php\php5.5.12
五、在php.ini中加入extension=php_mongo.dll
extension=php_mongo.dll這行字需要根據實際情況,有些是extension=php_mongodb.dll,取決於D:\wamp\bin\php\php5.5.12\ext目錄中mongo擴展的名字。
注意:wamp中一般有兩個php.ini文件,一個是位於php的根目錄下,一個是apache的根目錄下,需要添加的是apache根目錄下的php.ini。
六、重啟wamp服務
最好是完全退出後再打開
最後,上圖體驗一下安裝後的美妙時刻。
安裝成功後,查看phpinfo版面,會有以下內容顯示。
至此, Windows 下添加php mongo擴展成功結束。

4. 濡備綍閰嶇疆MongoDB鍓鏈闆


MongoDB 宸茬粡鎴愪負甯傞潰涓婃渶鐭ュ悕鐨 NoSQL 鏁版嵁搴撱侻ongoDB 鏄闈㈠悜鏂囨。鐨勶紝瀹冪殑鏃犳ā寮忚捐′嬌寰楀畠鍦ㄥ悇縐嶅悇鏍風殑WEB 搴旂敤褰撲腑騫垮彈嬈㈣繋銆



MongoDB 宸茬粡鎴愪負甯傞潰涓婃渶鐭ュ悕鐨 NoSQL 鏁版嵁搴撱侻ongoDB 鏄闈㈠悜鏂囨。鐨勶紝瀹冪殑鏃犳ā寮忚捐′嬌寰楀畠鍦ㄥ悇縐嶅悇鏍風殑WEB 搴旂敤褰撲腑騫垮彈嬈㈣繋銆傛渶璁╂垜鍠滄㈢殑鐗規т箣涓鏄瀹冪殑鍓鏈闆嗭紙Replica Set錛夛紝鍓鏈闆嗗皢鍚屼竴鏁版嵁鐨勫氫喚鎷瘋礉鏀懼湪涓緇 mongod 鑺傜偣涓婏紝浠庤屽疄鐜版暟鎹鐨勫啑浣欎互鍙婇珮鍙鐢ㄦс



榪欑瘒鏁欑▼灝嗗悜浣犱粙緇嶅備綍閰嶇疆涓涓 MongoDB 鍓鏈闆嗐

鍓鏈闆嗙殑鏈甯歌侀厤緗闇瑕佷竴涓涓昏妭鐐逛互鍙婂氫釜鍓鑺傜偣銆傝繖涔嬪悗鍚鍔ㄧ殑澶嶅埗琛屼負浼氫粠榪欎釜涓昏妭鐐瑰埌鍏朵粬鍓鑺傜偣銆傚壇鏈闆嗕笉姝㈠彲浠ラ拡瀵規剰澶栫殑紜浠舵晠闅滃拰鍋滄満浜嬩歡瀵規暟鎹搴撴彁渚涗繚鎶わ紝鍚屾椂涔熷洜涓烘彁渚涗簡鏇村氱殑鑺傜偣浠庤屾彁楂樹簡鏁版嵁搴撳㈡埛絝鏁版嵁璇誨彇鐨勫悶鍚愰噺銆

閰嶇疆鐜澧
榪欎釜鏁欑▼閲岋紝鎴戜滑浼氶厤緗涓涓鍖呮嫭涓涓涓昏妭鐐逛互鍙婁袱涓鍓鑺傜偣鐨勫壇鏈闆嗐



涓轟簡杈懼埌榪欎釜鐩鐨勶紝鎴戜滑浣跨敤浜3涓榪愯屽湪 VirtualBox 涓婄殑鉶氭嫙鏈恆傛垜浼氬湪榪欎簺鉶氭嫙鏈轟笂瀹夎 Ubuntu 14.04錛屽苟涓斿畨瑁 MongoDB 瀹樻柟鍖呫

鎴戜細鍦ㄤ竴涓鉶氭嫙鏈哄疄渚嬩笂閰嶇疆濂芥墍闇鐨勭幆澧冿紝鐒跺悗灝嗗畠鍏嬮殕鍒板叾浠栫殑鉶氭嫙鏈哄疄渚嬩笂銆傚洜姝わ紝閫夋嫨涓涓鍚嶄負 master 鐨勮櫄鎷熸満錛屾墽琛屼互涓嬪畨瑁呰繃紼嬨

棣栧厛錛岋紝鎴戜滑闇瑕佺粰 apt 澧炲姞涓涓 MongoDB 瀵嗛掗錛

鐒跺悗錛屽皢瀹樻柟鐨 MongoDB 浠撳簱娣誨姞鍒 source.list 涓錛

$ sudo su
# echo "deb "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
鎺ヤ笅鏉ユ洿鏂 apt 浠撳簱騫朵笖瀹夎 MongoDB銆

鐜板湪瀵 /etc/mongodb.conf 鍋氫竴浜涙洿鏀

絎涓琛岀殑浣滅敤鏄琛ㄦ槑鎴戜滑鐨勬暟鎹搴撻渶瑕侀獙璇佹墠鍙浠ヤ嬌鐢ㄣ俴eyfile 閰嶇疆鐢ㄤ簬 MongoDB 鑺傜偣闂村嶅埗琛屼負鐨勫瘑閽ユ枃浠躲俽eplSet 涓哄壇鏈闆嗚劇疆涓涓鍚嶇О銆

鎺ヤ笅鏉ユ垜浠鍒涘緩涓涓鐢ㄤ簬鎵鏈夊疄渚嬬殑瀵嗛掗鏂囦歡銆

榪欏皢浼氬壋寤轟竴涓鍚鏈 MD5 瀛楃︿覆鐨勫瘑閽ユ枃浠訛紝浣嗘槸鐢變簬鍏朵腑鍖呭惈浜嗕竴浜涘櫔闊籌紝鎴戜滑闇瑕佸逛粬浠娓呯悊鍚庢墠鑳芥e紡鍦 MongoDB 涓浣跨敤銆

grep 鍛戒護鐨勪綔鐢ㄧ殑鏄鎶婂皢絀烘牸絳夋垜浠涓嶆兂瑕佺殑鍐呭硅繃婊ゆ帀涔嬪悗鐨 MD5 瀛楃︿覆鎵撳嵃鍑烘潵銆

鐜板湪鎴戜滑瀵瑰瘑閽ユ枃浠惰繘琛屼竴浜涙搷浣滐紝璁╁畠鐪熸e彲鐢ㄣ

鎺ヤ笅鏉ワ紝鍏抽棴姝よ櫄鎷熸満銆傚皢鍏 Ubuntu 緋葷粺鍏嬮殕鍒板叾浠栬櫄鎷熸満涓娿



榪欐槸鍏嬮殕鍚庣殑鍓鑺傜偣1鍜屽壇鑺傜偣2銆傜『璁や綘宸茬粡灝嗗畠浠鐨凪AC鍦板潃閲嶆柊鍒濆嬪寲錛屽苟涓斿厠闅嗘暣涓紜鐩樸



璇鋒敞鎰忥紝涓変釜鉶氭嫙鏈虹ず渚嬮渶瑕佸湪鍚屼竴涓緗戠粶涓浠ヤ究鐩鎬簰閫氳銆傚洜姝わ紝鎴戜滑闇瑕佸畠浠寮勫埌“浜掕仈緗"涓婂幓銆

榪欓噷鎺ㄨ崘緇欐瘡涓鉶氭嫙鏈鴻劇疆涓涓闈欐 IP 鍦板潃錛岃屼笉鏄浣跨敤 DHCP銆傝繖鏍峰畠浠灝變笉鑷充簬鍦 DHCP 鍒嗛厤IP鍦板潃緇欎粬浠鐨勬椂鍊欏け鍘昏繛鎺ャ

鍍忎笅闈㈣繖鏍風紪杈戞瘡涓鉶氭嫙鏈虹殑 /etc/networks/interfaces 鏂囦歡銆

鍦ㄤ富鑺傜偣涓:

鍦ㄥ壇鑺傜偣1涓:

鍦ㄥ壇鑺傜偣2涓:

鐢變簬鎴戜滑娌℃湁 DNS 鏈嶅姟錛屾墍浠ラ渶瑕佽劇疆璁劇疆涓涓 /etc/hosts 榪欎釜鏂囦歡錛屾墜宸ュ皢涓繪満鍚嶇О鏀懼埌姝ゆ枃浠朵腑銆

鍦ㄤ富鑺傜偣涓:

鍦ㄥ壇鑺傜偣1涓:

鍦ㄥ壇鑺傜偣2涓:

浣跨敤 ping 鍛戒護媯鏌ュ悇涓鑺傜偣涔嬮棿鐨勮繛鎺ャ

閰嶇疆鍓鏈闆
楠岃瘉鍚勪釜鑺傜偣鍙浠ユe父榪為氬悗錛屾垜浠灝卞彲浠ユ柊寤轟竴涓綆$悊鍛樼敤鎴鳳紝鐢ㄤ簬涔嬪悗鐨勫壇鏈闆嗘搷浣溿

鍦ㄤ富鑺傜偣涓婏紝鎵撳紑 /etc/mongodb.conf 鏂囦歡錛屽皢 auth 鍜 replSet 涓ら」娉ㄩ噴鎺夈

鍦ㄤ竴涓鏂板畨瑁呯殑 MongoDB 涓婇厤緗浠諱綍鐢ㄦ埛鎴栧壇鏈闆嗕箣鍓嶏紝浣犻渶瑕佹敞閲婃帀 auth 琛屻傞粯璁ゆ儏鍐典笅錛孧ongoDB 騫舵病鏈夊壋寤轟換浣曠敤鎴楓傝屽傛灉鍦ㄤ綘鍒涘緩鐢ㄦ埛鍓嶅惎鐢ㄤ簡 auth錛屼綘灝變笉鑳藉熷仛浠諱綍浜嬫儏銆備綘鍙浠ュ湪鍒涘緩涓涓鐢ㄦ埛鍚庡啀嬈″惎鐢 auth銆

淇鏀 /etc/mongodb.conf 涔嬪悗錛岄噸鍚 mongod 榪涚▼銆

$ sudo service mongod restart
鐜板湪榪炴帴鍒 MongoDB master錛

榪炴帴 MongoDB 鍚庯紝鏂板緩綆$悊鍛樼敤鎴楓

閲嶅惎 MongoDB錛

$ sudo service mongod restart
鍐嶆¤繛鎺ュ埌 MongoDB錛岀敤浠ヤ笅鍛戒護灝 鍓鑺傜偣1 鍜屽壇鑺傜偣2鑺傜偣娣誨姞鍒版垜浠鐨勫壇鏈闆嗕腑銆

鐜板湪鍓鏈闆嗗埌鎵嬩簡錛屽彲浠ュ紑濮嬫垜浠鐨勯」鐩浜嗐傚弬鐓 瀹樻柟椹卞姩鏂囨。 鏉ヤ簡瑙e備綍榪炴帴鍒板壇鏈闆嗐傚傛灉浣犳兂瑕佺敤 Shell 鏉ヨ鋒眰鏁版嵁錛岄偅涔堜綘闇瑕佽繛鎺ュ埌涓昏妭鐐逛笂鏉ユ彃鍏ユ垨鑰呰鋒眰鏁版嵁錛屽壇鑺傜偣涓嶈屻傚傛灉浣犳墽鎰忚佸皾璇曠敤鍓鏈闆嗘搷浣滐紝閭d箞浠ヤ笅閿欒淇℃伅灝辮功鍑烘潵鎷涘懠浣犱簡銆

濡傛灉浣犺佷粠 shell 榪炴帴鍒版暣涓鍓鏈闆嗭紝浣犲彲浠ュ畨瑁呭備笅鍛戒護銆傚湪鍓鏈闆嗕腑鐨勫け璐ュ垏鎹㈡槸鑷鍔ㄧ殑銆

濡傛灉浣犱嬌鐢ㄥ叾瀹冮┍鍔ㄨ璦錛堜緥濡傦紝JavaScript銆丷uby 絳夌瓑錛夛紝鏍煎紡涔熻鎬笉鍚屻

甯屾湜榪欑瘒鏁欑▼鑳藉逛綘鏈夋墍甯鍔┿備綘鍙浠ヤ嬌鐢╒agrant鏉ヨ嚜鍔ㄥ畬鎴愪綘鐨勬湰鍦扮幆澧冮厤緗錛屽苟涓斿姞閫熶綘鐨勪唬鐮併

MongoDB 3.0 姝e紡鐗堝彂甯冧笅杞

CentOS緙栬瘧瀹夎匨ongoDB

CentOS 緙栬瘧瀹夎 MongoDB涓巑ongoDB鐨刾hp鎵╁睍

CentOS 6 浣跨敤 yum 瀹夎匨ongoDB鍙婃湇鍔″櫒絝閰嶇疆

Ubuntu 13.04涓嬪畨瑁匨ongoDB2.4.3

MongoDB鍏ラ棬蹇呰(姒傚康涓庡疄鎴樺苟閲)

Ubunu 14.04涓婱ongoDB鐨勫畨瑁呮寚鍗

銆奙ongoDB 鏉冨▉鎸囧崡銆(MongoDB: The Definitive Guide)鑻辨枃鏂囧瓧鐗圼PDF]

Nagios鐩戞帶MongoDB鍒嗙墖闆嗙兢鏈嶅姟瀹炴垬

鍩轟簬CentOS 6.5鎿嶄綔緋葷粺鎼寤篗ongoDB鏈嶅姟

MongoDB 鐨勮︾粏浠嬬粛錛氳風偣榪欓噷MongoDB 鐨勪笅杞藉湴鍧錛氳風偣榪欓噷

via: How to set up a Replica Set on MongoDB

浣滆咃細Christopher Valerio 璇戣咃細mr-ping 鏍″癸細wxy

鏈鏂囩敱 LCTT 鍘熷壋緲昏瘧錛孡inux涓鍥 鑽h獕鎺ㄥ嚭

鏈鏂囨案涔呮洿鏂伴摼鎺ュ湴鍧錛

5. 自學php,接下來該做什麼

伺服器方面 centos7 和簡單的lnmp搭建 學點linux操作(裝vmware workstation , 安CentOS-7-x86_64-Minimal版本的鏡像,這個是不帶桌面完全命令行模式的)
資料庫方面 ,資料庫設計 ,多表查詢,索引優化 ,分表,主從
nosql方面 常見的就是redis和MongoDB
php方面有基礎知識,代碼優化,面向對象,設計模式(如工廠模式、單例模式、適配器模式,設計模式這塊 你可以網路以下 歪麥博客,我是這個博客里學的干貨比較多,php和mysql方面的一些優化),框架的話 thinkphp yii2 laravel 即時通訊類的框架 如swoole、workman
其他要學的一些 如 svn git composer 負載均衡
最後可以學一下docker技術,這是我最近學的,之所以學它就是因為我們公司有老項目是php5.5版本的,正在做的項目是5.6版本的,即將啟動的項目要用7.1版本,docker的作用是一台機器配置多個php環境不用切換就可以共存(之所以不用phpstudy,因為它需要切換環境)
php ide我推薦使用phpstorm 之前用過幾年的zend studio後來換成了phpstorm感覺phpstom要好用(之後其他語言的ide我都轉成jetbrains家的了,如pycharm webstorm)
其他的就是多多實踐了

閱讀全文

與mongodbphp教程相關的資料

熱點內容
怎麼做用指甲油做的解壓球 瀏覽:735
遞歸編程與數學應用 瀏覽:928
驚變1小時8分鍾才是經典 瀏覽:724
ps如何pdf製作 瀏覽:782
如何按照序號排列文件夾 瀏覽:433
演算法設計與分析基礎網盤 瀏覽:712
linux信號量的使用 瀏覽:61
朴初炫演過的電影 瀏覽:969
掌閱下的書在哪個文件夾 瀏覽:851
程序員學python難嗎 瀏覽:737
源泉插件圖紙加密 瀏覽:609
minitab編程 瀏覽:231
網頁編程語言大全 瀏覽:633
單片機鋰離子 瀏覽:9
單片機交流電流測量 瀏覽:717
小雞模擬器ios游戲一直正在解壓 瀏覽:928
可以把文件夾轉化為文檔的軟體 瀏覽:956
微軟認證高級程序員 瀏覽:887
人工智慧網路演算法工程師 瀏覽:459
白色邊框app是什麼 瀏覽:740