[好站分享] GitHub 上的瘋狂 C++ 相關資源清單:Awesome-C++
逛國外網站這麼久,很少碰到有資源齊全到讓我倒抽一口涼氣的...這個作者對 C++ 很有愛啊~~
Awesome-C++,是掛在 GitHub 上的一個 C++ 資源清單。收集了 C++ 相關的函式庫、軟體、書籍、文章...還推薦作者覺得也不錯的其它清單。連結如下:
https://github.com/fffaraz/awesome-cpp
一旦點進去,你會被裡面滿滿的超鏈結,把你的腎上腺素濃度打到最高... XD。如果您平常工作與 C++ 相關,您絕對不能錯過這份清單。我簡單列出一下這份清單有什麼:
(以下文長,是寫給英文苦手的讀者看的。英文沒啥問題的朋友,建議直接看原文即可)
一、函式庫與框架
* 標準函式庫(Standard Libraries):
C++ 原生函式庫、POSIX、ISO、GNU 各家出品的標準函式庫都有。
* 程式框架(Frameworks)
「框架」比「函式庫」規格大一點。一般來說,「函式庫」幫你把常用的程式寫好,你只要叫用就好了,是一種幫助你加速完工、但並沒帶來任何新功能的一堆程式碼。「框架」則是替原始 C++ 帶來一些令人驚艷的新功能。不過這種分法,並非絕對的。
* 人工智慧(Artificial Intelligence, AI)相關框架與函式庫
想要催得動這一坨東西,得有點 AI 背景。否則你可能不知道函式庫提供給你「深先搜尋(Depth-first Search)」與「廣先搜尋(Width-first Search)」這些函數怎麼讓那堆冷冰冰的硬體多一點智慧。
* 非同步呼叫所使用的事件佇列(Asynchronous Event Loop)
一般來說,一個程式呼叫另一個程式,「叫人的」得等「被叫的」把事情做完,才能繼續進行下一步。就像一個經理眼睛盯著新手做事、沒辦法回到辦公桌做自己的事一樣,這種模式叫「同步呼叫(Synchronous Call)」。比較好的作法,是你交代完新手該做什麼,就離開回去做自己的事,等新手做完了,再來報告說「我做完了」,這種模式叫「非同步呼叫(Asynchronous Call)」。不過要能做到「非同步」,「叫人者」與「被叫者」之間,得有「事件(Event)」這個機制,讓兩者互相溝通該做的事,以及是否完工。此處提供的,都是讓 C++ 能達成「非同步」機制的函式庫或框架。
* 音效(Audio)相關框架或函式庫
這裡放的,都是讓你的 C++ 能做到讀取音效檔(如:mp3),並用程式碼對該檔進行剪輯、混音...等動作的函式庫或框架。
* 生物(Biology)相關框架或函式庫
這邊的函式庫,可以讓您用 C++ 比對兩條 DNA 序列相似度有多高,或者從一大堆不同樣本的 DNA 中,找出哪條 DNA 與哪條可能有親緣關係...等。
* 命令列(Command Line Interface, CLI)相關框架或函式庫
用這邊的函式庫,可以讓您在命令列跑出一些令人驚艷的效果。如 NCurses 就是一套能在命令列之下,用文字盡量模擬出下拉式選單、按鈕...圖形界面的感覺。
* 壓縮(Compression)相關函式庫
讓您不必瞭解檔案壓縮原理,會叫用相關函數就能做到檔案壓縮。
* 平行處理(Concurrency)相關函式庫
讓 C++ 也能輕易做到同時處理多件事情的函式庫。
* 資料結構相關函式庫(Containers)
提供資料結構內的 B-Tree 與 Hashmaps 等架構,讓 C++ 輕鬆取用。
* 加密(Cryptography)相關函式庫
提供加密解密相關函數。
* 資料庫(Database)相關函式庫
讓 C++ 可以用幾道命令,輕鬆接取 MySQL、MongoDB...等知名資料庫內的資料。
* 除錯、測試、效能(Debug)相關函式庫
雖然原文只用了「Debug」這樣的簡單字眼,但這一區的函式庫包含「單元測試(Unit Test)」、「效能測試(Benchmark)」、「記憶體用量追蹤(Memory Tracking)」等功能的函數。讓您的程式在還沒跑之前,就接受嚴格檢驗,降低發生錯誤的機會。
* 遊戲引擎(Game Engine)
提供一些函數,讓您輕鬆讀入 3D 建模軟體(如:Maya, 3D Studio...)做出來的模型與動畫。並在程式內特定事件(如:碰撞)發生時播放。也提供打光(Shading)、物理函數(如:彈跳、碰撞)...等方便的程式供您取用。這些東西讓您在寫遊戲時,能以更快的效率產出結果。
* 圖形界面(Graphical User Interface, GUI)
讓您用 C++ 建立漂亮的視窗、對話框、核取框、下拉式功能表...等圖形界面。
* 圖形(Graphics)相關函式庫
這部分多與遊戲引擎搭配,提供 2D 圖形處理或 3D 光跡追蹤(Rendering)等「外觀美化」的函數。讓您的遊戲角色或場景,看起來更栩栩如生。
* 影像處理(Image Processing)相關函式庫
包含讀入/繪出各式圖檔(PNG、JPG、GIF...)、光學字元辨識、電腦視覺、讀入/播放各式影片(MP4...)等函數。
* 國際化(Internationalization)相關函式庫
讓您用 C++ 寫出來的程式,可以輕易支援各國語言(當然,各國語言要事先請翻譯社先翻好,這邊只是提供語系切換的機制)。
* 行程間通訊(Inter-Process Communication, IPC)相關函式庫
兩個跑起來的獨立程式(如:兩個執行檔)想在執行過程中交換資料,稱為「行程間通訊」,簡稱 IPC。IPC 雖然不至於難如登天,不過要做到,手續還是很瑣碎的。這邊的函式庫提供好用函數,讓兩個行程交換資料時,變得比較容易。
* JSON 支援相關函式庫
JSON 原文是 JavaScript Object Notation。是一種用「純文字」來表示「資料」的方法。如一筆「李大華、35 歲、手機 0937555666」的資料,用 JSON 表示是這樣的:
[
Name: "李大華",
Age: 35,
Mobile: "0937555666"
]
之後可以讓這樣的資料,流通於瀏覽器與伺服器之間。而 JSON 函式庫,可以快速幫您分析 JSON 表示的資料,將它還原成您要的格式。
* 日誌(Logging)支援函式庫
日誌在「系統稽核」中,是很重要的功能。系統得把「什麼人、等級多高、做了什麼事、何時做的、對哪部分做的、從哪個 IP 過來...」忠實記錄下來。萬一系統出事了,我們就能追查可能是誰搞的。類似「監視器」的功能。這部分的函式庫,可以讓 C++ 輕易做到「日誌」功能,您不用傷腦筋日誌功能該怎麼寫,它已經幫您寫好了。您只要會用就行。
* 機器學習(Machine Learning)相關函式庫
提供如「類神經網路」、「電腦視覺」等進階函式庫,讓您的 C++ 程式有少量人類視覺與思考能力(真的很少量,請不用有太高期待)。
* 數學(Math)相關函式庫
一些線性代數、矩陣運算...等相關數學函數。
* 多媒體(Multimedia)相關函式庫
如:影音串流...等相關函數。
* 網路(Networking)相關函數
提供各種低階網路協定相關函數。如:TCP/IP、HTTP、點對點傳輸、非同步通訊、以及一些與 Facebook 橋接的相關函數。
* 物理模擬(Physics)相關函數
這部分也可以大量用於遊戲程式設計。主要提供一些函數,用來模擬自然界各種物理現象。如水流、風吹、碰撞、彈跳...等。
* 機器人控制(Robotics)相關函數
一堆方便你控制或模擬機器人行為的函數。
* 科學運算(Scientific Computing)
一些在科學上比較用得著的數學運算。如工程數學、傅立葉分析...等。
* 腳本語言控制(Scripting)
包含一些能讓 C++ 與各種腳本語言(JavaScript、PHP、Perl...)橋接的函數。
* 序列化控制(Serialization)
首先解釋一下何謂序列化。序列化可以把程式執行到一半的樣子,如數保存於硬碟中,甚至於可以關機。之後可以把序列化的資料「反序列化」,將它「解凍」還原至記憶體繼續跑,就像當初跑到一半被「冷凍」當下再往下執行一樣。這邊提供許多 C++ 序列化的函式庫。
* 影片處理(Video)
可以讀入/播放各種影片檔的函式庫。
* 虛擬機(Virtual Machines)
這邊提供一些用 C++ 寫出來的「輕量級」虛擬機。所謂虛擬機,是用軟體模擬出硬碟、處理器、記憶體、螢幕,工程師可以在虛擬機內安裝另一個作業系統,就好像安裝作業系統至真實機器一樣。
* 網頁應用軟體框架(Web Application Framework)
集合了一些用 C++ 寫出來的 WWW 伺服器、或開發網頁時用得上的函式庫等。
* XML
如果你希望教會你的 C++ 程式「讀懂」一個 XML 檔在講什麼,這邊提供了一堆 XML 解析器(XML Parser),方便您分析從遠方伺服器傳來的 XML 檔到底想表達什麼樣的資料。
* 其它(Miscellaneous)
一些無法分類的東西,通通塞在這裡。大部分是一些小型的函式庫或 C++ 與其它語言的橋接軟體。
二、C++ 相關軟體
* 編譯器(Compiler)
各類把 C++ 原始碼編成 0 與 1 機械碼的軟體。
* 線上編譯器(Online Compiler)
懶得安裝編譯器的話,現在有一堆線上的編譯器。你上傳原始碼,它會編成機械碼後,丟還個執行檔給你下載。
* 除錯器(Debugger)
一些有名的 C++ 除錯器。當你的程式無法執行時,可以靠它找出到底錯在哪裡。
* 整合式開發環境(Integrated Development Environment, IDE)
IDE 就是把文字編輯器(Editor)、編譯器(Compiler)、除錯器(Debugger)...等軟體整合成一體的軟體。您可以不離開該環境,就能寫碼、編譯、除錯、執行...。
* 軟體建構系統(Build Systems)
簡單說,就是把一些瑣碎動作事先安排好、可以在程式碼修改後,下達一條指令(如:「建構!」),就可全自動一條鞭地從編譯、測試、備份、安裝...一口氣完成的系統。
* 原始碼靜態分析軟體(Static Code Analysis)
丟入原始碼,可以幫你找出哪段程式可能發生錯誤,或者可能造成效能低下。也能找出完全沒被叫用到的原始碼,提醒您刪除。甚至於可以把您的程式碼重排成符合特定格式,統一多人寫碼風格時很有用。
三、其它資源
* API Design 文件
* 有用文章(Articles)
* 推薦書籍(Books)
* 寫碼風格(Coding Style)
* 演講(Talks)
* 影片教學(Videos)
* 有用網站(Web Sites)
* 有用部落格(Weblogs)
* 其它 Awesome C++ 姊妹作(Other Awesome Projects)
四、其它也很棒的清單(Other Awesome Lists)
能看到這行字的,給您拍拍手!辛苦了!希望今天分享的內容您會喜歡!也請您不吝按讚鼓勵,或分享給您 Facebook 的親朋好友!
同時也有10000部Youtube影片,追蹤數超過2,910的網紅コバにゃんチャンネル,也在其Youtube影片中提到,...
「php呼叫javascript」的推薦目錄:
- 關於php呼叫javascript 在 紀老師程式教學網 Facebook 的最佳貼文
- 關於php呼叫javascript 在 紀老師程式教學網 Facebook 的精選貼文
- 關於php呼叫javascript 在 紀老師程式教學網 Facebook 的精選貼文
- 關於php呼叫javascript 在 コバにゃんチャンネル Youtube 的最佳貼文
- 關於php呼叫javascript 在 大象中醫 Youtube 的最佳解答
- 關於php呼叫javascript 在 大象中醫 Youtube 的精選貼文
- 關於php呼叫javascript 在 [請益] onclick 呼叫php function 疑惑之處 - 批踢踢實業坊 的評價
- 關於php呼叫javascript 在 How to call a JavaScript function from PHP? - Stack Overflow 的評價
- 關於php呼叫javascript 在 Re: [請益] PHP可否內部呼叫javascript | PTT 熱門文章Hito 的評價
- 關於php呼叫javascript 在 PHP Tutorials:How to call PHP function from javascript in php 的評價
- 關於php呼叫javascript 在 手邊PHP一些note... | 程式狂想筆記 的評價
php呼叫javascript 在 紀老師程式教學網 Facebook 的精選貼文
新一代網站伺服器架構:MEAN
(加贈 MEAN 免費電子書)
最近國外科技網站頻頻出現一個新名詞:「MEAN」。而且該名詞只會出現與「網站開發(Web Site Development)」相關的論壇。看著大家「卑鄙」來「卑鄙」去的(Mean 在英文是「卑鄙、小氣」的意思),彷彿這個名詞技客(Geeker)們都已經熟到不用解釋到底在卑鄙個什麼。擁有嚴重資訊焦慮症(笑)的我,眼睛怎能容忍一個不知道全名的縮寫,動不動就從畫面「立體突出」來恥笑我呢!... :-D 稍微用點技巧查了 Google,並且把結果分享給大家。
原來 MEAN 講的是架設網站時,所使用的四套軟體:MongoDB、Express、AngularJS、Node.js。早個十年,那時開發網站流行使用 LAMP (Linux, Apache, MySQL, PHP) 這四套軟體。近年來,由於「大數據(Big Data)」、「分散式架構(Distributed Architecture)」、「非同步函數呼叫(Asynchronous Calls)」流行,傳統的 LAMP 已經無法應付上述三個需求,因此,網站開發環境就從「檯燈(LAMP)」換成「卑鄙(MEAN)」了... :-D 。皆下來我就一一介紹「卑鄙會的會員們」有哪些特色。
MongoDB 是一款以「檔案」做為儲存媒介的資料庫(Database)。有別於用傳統資料庫伺服器儲存資料、得把資料集中在後端單一機器上,使用檔案來存資料,不必硬是把資料集中在後台的一部機器上。你可以把一筆資料「碎屍萬段」,人名與電話的基本資料放在一台機器內的檔案,學經歷資料放在另一台機器內的檔案,達到「分散儲存,平行存取」的效果。這類用檔案做為儲存媒介的資料庫,我們通常稱為 NoSQL Database。近來 Facebook、Google...等網站,都積極使用 NoSQL Database 來做為後端儲存媒介。不但能「分散儲存」資料來預防一台機器掛點、整個網站就不能動的窘境,還能藉由「平行存取」位於數十台機器上分散儲存的資料,達到「秒取」所需的數據。關於 NoSQL 的介紹,可以看這篇「NoSQL 入門指引」: http://www.openfoundry.org/tw/news/9040
接下來我會介紹 Node.js,因為它比 Express 或 AngularJS 都來得基本。什麼是 Node.js 呢?簡單來說,就是執行於伺服器端的 JavaScript。拿 LAMP 時代的成員來比喻,Node.js 的地位就與 PHP 相同,只不過它採用 JavaScript 來當成語言而已。當然,Node.js 不是只有把 JavaScript 從客戶端搬到伺服端那麼簡單而已,還添加了不少功能。最著名的,當屬「非同步呼叫(Asynchronous Calls)」機制了。想瞭解「非同步呼叫」,得先瞭解什麼是「同步呼叫」。當主程式呼叫副程式時,在副程式還沒執行完前,主程式會「卡住」,等待副程式完成返回後,主程式才會繼續下一列程式碼的執行。這種函數呼叫方法稱為「同步呼叫」。但若副程式執行時間長,主程式在等待時就會因螢幕凍結、讓使用者體驗到類似「當掉」的情況。所以另外一種作法,就是主程式呼叫副程式、副程式開始運作後,主程式不等待副程式完成,逕行執行下一道指令。此時主副程式處於「平行運作」的狀況。等待副程式完成,就會「通知」主程式說:「我做完了」,主程式再予以反應即可。這種函數的呼叫方法,就稱為「非同步呼叫」。Node.js 並非三言兩語可以講完,有興趣的朋友,可以參考這本免費的 Node.js 電子書「Node 入門」: http://www.nodebeginner.org/index-zh-tw.html
再來是 AngularJS。它是 JavaScript 的「函式庫(Library)」,地位比較偏「前端」,負責 UI 的建置。如果說 JavaScript 是「無敵鐵金剛」,那 AngularJS 就類似「金剛飛翼」。與無敵鐵金剛結合後,就能讓本來不會飛的鐵金剛,遨翔在天際。AngularJS 有兩大特色:「單一網頁」與「MVC 模式」。「單一網頁」就類似你查詢「Google 圖片」時的感覺相同。網站一開始只提供一部份資料,隨著你往下捲,網站會動態載入剩下的部分。所有內容只要一直捲動,就會完整呈現,不必按「下一頁」,這就叫「單一網頁」。至於「MVC 模式」比較難懂,完全不瞭解它是什麼的版友,就等您實際研讀 AngularJS 再去學吧!Facebook 這邊實在不適合我長篇大論地講「何謂 MVC」。真的求知若渴的朋友,或可參考這篇「MVC 淺談」: http://luvit.me/1GzNxqN。最後,對 AngularJS 有興趣的朋友,可以參考這篇「我的前端 AngularJS 初體驗」: http://upvot.es/1C6W9qd
Express,一稱 ExpressJS,是一款 JavaScript 的「框架(Framework)」。所謂框架,就是協助你快一點寫出你想要的程式碼的工具。如果 JavaScript 是無敵鐵金剛,Express 就是幫忙你快速產生一架無敵鐵金剛的工具(以便讓你快去跟 AngularJS 這個金剛飛翼結合)。如果你是 PHP 的老手,我說 Express 就像是 PHP 內的 PEAR,不知道您是否能更有體會呢?關於 Express 的簡單介紹,中文的不多,不過我還是勉強找到這一篇 OK 的:「使用Node.js + Express建構一個簡單的微博網站」( http://upvot.es/1E4MGQT )。
不知這樣介紹,大家知道怎麼「卑鄙」(MEAN)地建構一個網站了嗎?最後送大家一本「卑鄙入門 XD」免費電子書。點擊後,找尋「eBook」這個關鍵字就能免費下載囉:
"MEAN Web Development", Packt Publishing, 2014
http://www.it-ebooks.info/book/4849/
期待大家也開始在網站開發這一塊,越來越「卑鄙」....
參考資料:
MongoDB(維基百科): http://zh.wikipedia.org/wiki/MongoDB
用 Express 和 MongoDB 寫一個 todo list: http://upvot.es/17ER5vU
AngularJS(維基百科): http://zh.wikipedia.org/wiki/AngularJS
使用 Node.js、Express、AngularJS 和 MongoDB 构建一个实时问卷调查应用程序: http://upvot.es/187BAwj
精通 MEAN: 当 MEAN 遇到 Meetup.com 和微数据: http://upvot.es/1E4Mili
php呼叫javascript 在 紀老師程式教學網 Facebook 的精選貼文
HTML/CSS/JavaScript 開發工具總整理
這篇幫您整理出實作 HTML/CSS/JavaScript 時,一些比較酷的工具、函式庫。非常有用!很推薦大家看!我簡單翻譯一下大綱,不過我會推薦以:
(1) 編輯器:教您用那個工具來撰寫 HTML/CSS/JavaScript 會比較好。
(4) 函式庫:補充 JavaScript 原來不足之處。如同加上「金剛飛翼(函式庫)」後的「鐵金剛(JavaScript)」就突然能飛是一樣的。
(3) 前處理器:把常用、好用、可能高達數百行的 CSS/JavaScript 程式碼,濃縮成一個名字,讓您使用後,彈指之間有如寫出數百行 CSS/JavaScript 般。
(2) 框架:原始碼外觀可能完全不像 JavaScript,但寫完後,會由框架轉換成 JavaScript 去執行。讓您不但「寫得少」,還有「功能多」的好處。有點像「前處理器」+「函式庫」的綜合體。
(5) 工具:一些測試、編譯、模板等工具,可以讓你的程式設計工作,更加自動化、更輕鬆。
這樣的順序來研讀。不過我底下的翻譯為了配合原文,無法調整成我認為理想的順序,請大家見諒囉!
原文連結:
https://tutsplus.com/tutorial/essentials-tools-for-a-modern-front-end-development-workflow/
---------
(1) 編輯器(寫碼之用):
- 「Sublime Text 3」:
這個我們介紹過好幾次了!個人非常推薦!Sublime Text 3 是要錢的,不過它的前一版 Sublime Text 2,則可以「試用」到天荒地老,不另收費!
- 「Light Table」:
它的好處就是一邊編輯,可以一邊看到結果。不必等到用瀏覽器秀出來才知道對錯。不過這個特性個人沒有覺得有多好,我自己不太推。
- 「WebStorm」:
一個將「寫碼、偵錯、看結果」全部整合在一個視窗的工具。是很不錯!但如果您不喜歡掏錢買軟體,這個可能不是你要的。
- 「Vim」:
已經五十歲的一個老牌編輯器!免費、不太好學、但學會後您不會想換其它編輯器。這有點像開慣手排車的人,要他回來開自排車,簡直要了他的命一樣。
- 「Brackets」
也是整合「寫碼、偵錯、看結果」於一身的工具。Adobe 研發、免費。不過整合得沒有 WebStorm 好,很多功能 Sublime Text 2/3 也做得到。所以個人還是認為學 Sublime Text 比較划算。
(2) JavaScript 程式框架(Frameworks):
所謂「框架」,就是把本來要自己寫兩三百行程式碼才能實現的功能,讓您在彈指之間就寫出來的工具。如果您的程式碼用了「框架」,外觀上有可能看起來一點都不像 JavaScript 原始碼!不過它在底層「展開」後,仍然是 JavaScript 原始碼無誤!只不過你要寫的是那一兩行「未展開」的框架原始碼,而非「展開後」那兩三百行 JavaScript 原始碼就是了。
用框架來寫程式,就像你包餃子是買做好的「餃子皮(框架)」來包,而非買「麵粉(JavaScript)」從頭做起。時間上省了很多!
比較著名的 JavaScript 框架有(可以混用):
- Backbone:jQuery (一種函式庫,後述)最流行的框架。
- Ember.js:提供一堆很美麗的 Cocoa UI(一種用 JavaScript 寫成的人機界面),還讓你用少少幾行完成。
- AngularJS:Google 提供!主要用來擴充 HTML 的功能之用。著重在功能面上的一個框架。
- Knockout.js:它著重在「資料綁定」。這是 Backbone 比較弱的一環。Backbone 做資料綁定可能要好幾百行,Knockout.js 大概只要十幾行就完成了。
- Meteor:架構在 Node.js(一種跑在伺服器上的 JavaScript,地位等同 PHP)的框架,目的是希望讓 Node.js 的程式師能少寫幾行程式碼。
- Mocha:一種針對「JavaScript」做「單元測試」的框架。類似 Java 裡的 JUnit。競爭對手包括「Jasmine」與「QUnit」。
(3) 前處理器(Preprocessors):
所謂「前處理器」,就是把一些常用、複雜的 CSS/JavaScript 寫法,賦予它一個簡短名字。然後只要你在 CSS/JavaScript 原始碼內 寫上這個名字,這些前處理器,就會把它展開,還原成原來 CSS/JavaScript 的樣子。這會讓你大大縮短開發時間!著名的前處理器排列如下(大部份人會慣用其中之一即可,雖然也可以混用):
以下是 CSS 的三大前處理器:
- Sass
- LESS
- Stylus
以下是 JavaScript 的兩大前處理器:
- CoffeeScript
- TypeScript
以下是全方位的前處理器:
- CodeKit
- LiveReload
(4) 函式庫(Libraries):
所謂函式庫,就是人家幫你寫好的 JavaScript 副程式。想用時,直接拿來呼叫即可。正如「鐵金剛(JavaScript)」本來不會飛,加上「金剛飛翼(函式庫)」後,就有飛的功能了。著名的函式庫如下所示:
- jQuery:它是用來操縱整個 HTML 節點(或稱 DOM 結構)最棒的函式庫!講到操作 DOM,除了 jQuery 外不作第二人想!
- Underscore:它是用來補足 JavaScript 沒提供「顯而易見」函數而被發明出來的。如 find(), shuffle()...等。它與 Backbone 框架緊密結合。用了 Backbone 的人很少沒聽過 Underscore 的大名的。
- D3:它的拿手好戲就是顯示統計圖表!如果你想用 JavaScript 顯示各類統計圖表,D3 絕對不可錯過!
(5) 工具(Tools & Utilities)
- RequireJS:一個 JavaScript 檔案/模組載入器。允許你把 JavaScript 寫成小小模組,然後像樂高積木一樣載入使用。不好學,但學會後很值得。
- Testem:JavaScript 的測試用工具。
- Grunt:一個可以將 JavaScript 的編譯、載入、測試、執行工作,自動化的命令列工具。類似 C 語言世界裡的 make。
- Normalize:可以將你的程式碼,改到連用 IE 低版本瀏覽器來看,效果都跟 Chrome 或 Firefox 一樣的工具。
- HTML5 Boilerplate:它裡面包含了上百個「模板」,可以讓你「拷貝與貼上」,就能擁有強大的網頁功能,不必寫大量程式碼。
- Twitter Bootstrap:由 Twitter 工程師貢獻的大量模板,也是可以讓你「拷貝與貼上」使用它們。
- Foundation 4:與 Bootstrap 是競爭對手、也有大量模板供你拷貝與貼上使用之。
https://tutsplus.com/tutorial/essentials-tools-for-a-modern-front-end-development-workflow/
---
原文已經率先刊登於 G+ 私密社團「紀老師網頁程式設計」。對 HTML/CSS/JavaScript 感興趣的朋友,可以申請加入:
https://plus.google.com/communities/100793154849235819235
(申請制,審核時間 24 小時內)
php呼叫javascript 在 コバにゃんチャンネル Youtube 的最佳貼文
php呼叫javascript 在 大象中醫 Youtube 的最佳解答
php呼叫javascript 在 大象中醫 Youtube 的精選貼文
php呼叫javascript 在 How to call a JavaScript function from PHP? - Stack Overflow 的推薦與評價
... <看更多>
相關內容
php呼叫javascript 在 Re: [請益] PHP可否內部呼叫javascript | PTT 熱門文章Hito 的推薦與評價
之銘言:: 簡單說就是PHP能不能在server端跑javascript的程式碼: javascript的程式碼寫在PHP檔案或是動態從其他地方讀取: 但是不是要他在client端去跑: 而是讓PHP ... ... <看更多>
php呼叫javascript 在 [請益] onclick 呼叫php function 疑惑之處 - 批踢踢實業坊 的推薦與評價
※ 引述《sos0214 (kaleidoscope)》之銘言:
: 請問一下onclick不能呼叫php的function嗎
: 找了找好像只有javascript
: 不過我讀寫檔用php,所以想找一下
那請問一下 PHP是否沒有其他方法可以解決了??
我想用BUTTON案一下 某數就+1
我也是想到onclick 的方式
是不是還有其他的解決方式呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.220.30.237
那也是配合js去寫嗎??
可是我function裡 有牽涉到PHP的運算 那是要如何寫!!?
把運算的部份用<? ?>框起來??
※ 編輯: claire0810 來自: 61.220.30.237 (08/10 15:32)
是在同一個網頁
(一個簡單的萬年曆的程式)
我希望他案一下button就可以+一年
※ 編輯: claire0810 來自: 61.220.30.237 (08/10 15:40)
嗯....
我想問的是 不透過post或get 而直接呼叫function
js可以 但是我結合js會有問題 沒辦法呼叫到function
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文件</title>
</head>
<body>
<div align="center">
<?php
$YMD=$_REQUEST["d"];
// 秀當天的資料, 將來可以配合資料庫使用
function _ShowDay1($Y,$M,$D)
{
echo $D;
}
function _ShowDay($Y,$M,$D,$YMD)
{
if($YMD==mktime(0,0,0,$M,$D,$Y))
{
echo "<font color=#FF1122>";
_ShowDay1($Y,$M,$D);
echo "</font>";
}
else
{
_ShowDay1($Y,$M,$D);
}
}
if($YMD=="")
$Now=getdate(); // 今天
else
$Now=getdate(mktime(0,0,0,substr($YMD,4,2),substr($YMD,6,2),substr($YMD,0,4)));
$Y=$Now[year];//年
$M=$Now[mon];//月
$D=$Now[mday];//日
$Today=mktime(0,0,0,$M,$D,$Y);
$WeekOf1stDay=(8-(($D-$Now[wday])%7))%7; // 當月的第一天是星期幾(月歷上,第一
天是從第幾格開始)?
$MaxDay=(mktime(0,0,0,$M+1,1,$Y)-mktime(0,0,0,$M,1,$Y))/60/60/24; // 當月有幾
天?
$NoDays=($MaxDay+$WeekOf1stDay)%7; // 月歷上,第幾天之後是空白?
$WeekLine=($MaxDay+$WeekOf1stDay+(7-$NoDays))/7; // 月歷上,一共占幾層?
?>
</div>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=big5">
<div align="center">
<HEAD>
</div>
<TITLE>
<div align="center">Calendar</div>
</TITLE>
<div align="center">
</HEAD>
<BODY>
<table border=1>
<tr>
<td colspan="7">
<div align="center">
<?php
echo "<input type=button value='<<' onClick=cleck_data() >".$Y."年<input
type=button value='>>'><br/>";
echo "<input type=button value='<<'>".$M."月<input type=button
value='>>'><br/>";
?>
</div></td>
</tr>
<tr>
<td><font color=#AA0000>星期日</font></td>
<td>星期一</td>
<td>星期二</td>
<td>星期三</td>
<td>星期四</td>
<td>星期五</td>
<td><font color=#007700>星期六</font></td>
</tr>
<?php
for($i=0;$i<$WeekOf1stDay;$i++)
{
echo "\n <td> </td>";
}
$DD=1;
for($i=$WeekOf1stDay;$i<7;$i++)
{
// echo "\n <td>".$DD."</td>";
echo "\n <td>";
_ShowDay($Y,$M,$DD,$Today);
echo "</td>";
$DD++;
}
echo "</tr>";
for($j=2;$j<$WeekLine;$j++)
{
echo "\n <tr>";
for($i=0;$i<=6;$i++)
{
// echo "\n <td>".$DD."</td>";
echo "\n <td>";
_ShowDay($Y,$M,$DD,$Today);
echo "</td>";
$DD++;
}
echo "</tr>";
}
echo "\n <tr>";
for($i=0;$i<$NoDays;$i++)
{
// echo "\n <td>".$DD."</td>";
echo "\n <td>";
_ShowDay($Y,$M,$DD,$Today);
echo "</td>";
$DD++;
}
for($i=$NoDays;$i<7;$i++)
{
echo "\n <td> </td>";
}
echo "</tr>\n";
?>
</table>
</div>
</BODY>
</body>
</html>
點選<< 或者>> 的button 則年份+1
如果我post出去 就不一樣了....
※ 編輯: claire0810 來自: 61.220.30.237 (08/10 16:34)
... <看更多>