2016年12月26日 星期一

PHP 5.4 開始 session_register() 出現錯誤訊息,解決方式

PHP Logo


如果使用虛擬主機當系統更新 PHP 版本後造成系統運行時出現錯誤訊息:「Fatal error: Call to undefined function session_register() in ……..」


該錯誤訊息說明 session_register() 已經不存在了,因虛擬主機更新至新系統 PHP 官方版本已不再支援舊函式,

如果沒辦法控制系統 PHP 運行版本時,則您必序更新系統中的 seession 撰寫方式,


原始 PHP session_register() 官方網站說明:http://php.net/manual/en/function.session-register.php

函式支援版本:

(PHP 4, PHP 5 < 5.4.0)

session_register — Register one or more global variables with the current session

session_register() accepts a variable number of arguments, any of which can be either a string holding the name of a variable or an array consisting of variable names or other arrays. For each name, session_register() registers the global variable with that name in the current session.



解決方式(一):更改 session 語法

如:

session_register($variable)

更改為:

$_SESSION[$variable]



解決方式(二):自建 session_register 函式

如果 PHP 刪除了 session_register 函式,另一種解決方式就是….. 自行建立 session_register() 函式,在系統程式碼中加入下列片段:

  1. if (!function_exists(‘session_is_registered’)) {
  2.     function session_is_registered($name) {
  3.         if (isset($_SESSION[$name])) {
  4.             return true;
  5.         } else {
  6.             return false;
  7.         }
  8.     }
  9. }
  10. if (!function_exists(‘session_register’)) {
  11.     function session_register() {
  12.         $args = func_get_args();
  13.         foreach ($args as $key) {
  14.             $_SESSION[$key] = $GLOBALS[$key];
  15.         }
  16.     }
  17. }
  18. if (!function_exists(‘session_unregister’)) {
  19.     function session_unregister($name) {
  20.         unset($_SESSION[$name]);
  21.     }
  22. }

———————————

備註:上面程式碼片段建議使用在新系統中改用新版 PHP Session 寫法。


資料來源:【PHP 5.4 開始 session_register() 出現錯誤訊息,解決方式】。


微軟 Windows 10 安裝量超過 Windows 7

微軟 Windows 10 安裝量超過 Windows 7


三方市場份額統計數據顯示 Windows 10 市占率稍微超過20%,而 Windows 7 繼續領先市場,市占率近45%,但根據微軟自己公布的最新數字,Windows 10操作系統市占率已經位居第一,超過 Windows 7。微軟聲稱就安裝數量來說,Windows 10市占率已經位居第一,在8月份的份額為43%,而Windows 7位居第二,份額是42%,Windows 8.1位居第三,份額是13%。

8月是微軟為Windows 10推出周年更新的一個月,雖然很明顯這款操作系統市占率確實因此有了提升,但很難相信它增長了這麼多,以至於超過了Windows 7 。對於Windows 7的價值,有很多用戶認為Windows 7工作非常好,打算堅持到2020年1月微軟結束支持Windows 7之際。就美國市場而言,微軟表示,Windows 10的表現更好,Windows 10市占率達到55%,而Windows 7則是35%的。

當然,這並不一定意味著準確性,根據微軟公司本身表示,這些Windows數據來自於客戶遙測數據,並且由於在Windows 10上默認情況下啟用了數據遙測功能,很有可能這是為什麼Windows 7位居第二的原因。微軟最初計劃在2017財年年底前讓Windows 10推向10億台設備,但該公司最近承認可能無法實現這一目標。


資料來源: https://www.powerweb.tw/modules/news/V246.html

2016 最熱門的 PHP 框架 Framework (Laravel, CodeIgniter, Yii 2, CakePHP, Symfony2 …)

205533dk673kk4kvk3k48k


每個 PHP框架(PHP Framework, 如:Laravel, CodeIgniter, Yii 2, CakePHP, Symfony2)都擁有各自獨特的地方。同時PHP語言已經獲得了巨大的認同並且成為了世界上最通用的服務器腳本語言。PHP也儼然成為了最容易學習的web動態開發語言。在PHP發展的同時,PHP框架也迅速崛起,使開發復雜應用變得簡單、快捷。

許多PHP開發者選擇PHP框架,就是因為在PHP框架中為你的應用已經提供了精准的目錄和環境,便於快捷開發。這也是一個開發高擴展性和高質量網頁的最佳實踐。

在過去幾年中,Lavarel有很明顯的優勢一直處在最熱門PHP框架的冠軍位置,同樣在2016年也是如此。現在我們也越來越多講開發邏輯轉移到前端,後端只是作為一個API。然而,學習一個全棧框架是仍然有必要的。但是在眾多框架中,你如何挑選一款最適合你自己的呢?所以讓我們坐下來,看看這篇文章,找到屬於你自己的PHP框架。今天讓我們來一起盤點一下2016最熱門的PHP框架。

上圖中顯示了Laravel從去年開始就一直成為最受歡迎的框架。但是為什麼 Lavarel,一個僅僅幾年前才出現的框架一舉變成了現在最受歡迎的框架了呢?

Laravel

就如谷歌熱門趨勢表所展現的,Laravel一直是PHP開發者最受歡迎的PHP框架。這是一個年輕的框架,但是擁有優雅的語法,可簡單快速開發你的應用。它擁有大多數常見的功能,如:路由,身份驗證,會話,隊列和緩存。

CodeIgniter

排名第二的是CodeIgniter。它是一個輕量級的PHP框架,提供了簡單而精致的平台來開發你的的Web應用程序。但是使得CI排名第二的最重要的原因就是CI並沒有提供足夠的安全防護,所以這並不是我們選擇框架的首選。

Yii 2

一個基於DRY (Don’t Repeat Yourself) 理念的,擁有簡潔編程邏輯的純面向對像框架。Yii2中整合了jQuery還有一套完整的AJAX機制可以使得很好的擴展你的皮膚和主題功能。總的來說,Yii2框架對於前端轉後端的開發者來說很友好。

CakePHP

CakePHP同樣是一款受PHP開發者歡迎的框架,因為它輕量級、簡單、反應迅速並且編寫簡單。它的模板簡單易用。CakePHP基於“CRUD”,這是在數據庫交互最方便以及最流行的功能方式。CakePHP還有用像:安全驗證、郵件、會話、cookie和請求處理這些功能。CakePHP最大的缺點就是沒有支持面向對像。

Symfony2

Symfony一直是PHP開發者穩定使用的框架之一。它非常靈活並且功能強大。Symfony有很多可以復用的部分比如:安全、模板、轉義、驗證、表單配置等。


………………


資料來源:https://www.powerweb.tw/modules/news/V247.html

2016年12月12日 星期一

CakePHP 3.3.9 發佈,PHP 開發架構

CakePHP 3.3.9 發佈,PHP 開發架構


Cakephp 3.3.9 發佈了,CakePHP 是一個運用了諸如 ActiveRecord、Association Data Mapping、Front Controller 和 MVC 等著名設計模式的快速開發框架。該項目主要目標是提供一個可以讓各種層次的 PHP 開發人員快速地開發出健壯的 Web 應用,而又不失靈活性。

更新內容如下:

bug修復:

  • An invalid option was removed from JsonView.
  • ShellDispatcher now logs fewer warnings about duplicate shells when debug logging is enabled.
  • The exception message raised when an ORM update fails due to missing primary key values has been improved.
  • Xml::toArray() no longer errors on tag names that match application class names.
  • Console errors no longer include duplicate tags when invalid options are used.
  • Improved API documentation for return & parameter types.
  • Router no longer parses extensions in a greedy way.
  • Route key elements can now be a single character.

新特性:

  • BreadCrumbsHelper was added. This helper offers and improved API over the existing breadcrumb features offered by HtmlHelper.
  • Cake\Network\Response now features a __debugInfo() method.

點此查看完整更新日誌發行說明

下載地址:


資料來源:CakePHP 3.3.9 發佈,PHP 開發架構

App Maker - Google 企業應用創建工具

App Maker - Google 企業應用創建工具


Google 今天宣布推出 App Maker,這也是低階代碼(low-code)、拖放式應用創建市場的最新成員。與 Microsoft 及眾多創業公司的類似應用制作工具一樣,App Maker 也承諾讓任何人都能輕鬆且快速地開發功能基本的應用,滿足機構內部某些具體目的的需要。


Google App Maker 提供了基於雲端的拖放式開發環境,讓你可以輕鬆打造用戶界面,並借助於 G Suite 應用、Google地圖、Google Contacts 和 Google Groups 以及幾乎所有提供 API 的服務所產生的數據,讓這種用戶界面受到大眾的歡迎。這些應用運行的架構與Google自家 G Suite 應用的架構相同,IT 管理員還能完全像 Gmail、Drive 和其他 G Suite 應用一樣管理它們。


此類應用常用於時間追蹤解決方案,或是用於追蹤訂單和庫存——基本上能用於解決企業內部的許多問題,這些問題可以輕鬆實現數字化,並通過最基本的定制應用加以解決。


Google表示,App Maker 的優勢在於,用戶不必擔心任何類型的基礎架構(業內流行說法是“無服務器”),令他們可以開發出一些簡單的應用,這些應用在解決他們基本需要的同時,還不需要他們具備專業開發者的技術水平。想要進一步挖掘 App Maker 的潛力,用戶也可以利用內置腳本編輯器做到這一點——從外觀上看,App Maker 就像是功能齊全的 IDE(集成開發環境)。


App Maker 現已向參與 企業版 G Suite“早期體驗者項目”(Early Adopter Program)的用戶開放。

除了推出 App Maker,Google還宣佈給其“Recommended for G Suite”項目增加大量新的企業應用。這個項目旨在保證應用已經很好地整合到 G Suite,並且經過了用於發現安全漏洞的測試。Google今天宣佈了“Recommended for G Suite”項目的新一批合作伙伴,其中包括 Virtru、LumApps、DocuSign、Freshdesk、Zoho Invoice、Xero 和 Asana。


App Maker - Google 企業應用創建工具


資料來源:  App Maker - Google 企業應用創建工具

2016年11月23日 星期三

Google 宣佈加入 .NET 基金會,Tizen 作業系統也支持.NET

谷歌 Google 宣佈加入 .NET 基金會,三星 Tizen 作業系統也支持.NET 了


微軟 Microsoft 今天在紐約舉辦了一年一度的 Connect(); 開發者大會。由於 .NET 已成為微軟 Microsoft 許多項目(如開源項目)的核心部分,所以這家科技巨頭在本次大會上公佈了諸多以.NET 為中心的計劃,並不令人感到意外。這些計劃大部分與 .NET 基金會 有關。.NET 基金會是由微軟 Microsoft 創建的一個開源組織,旨在為.NET Core 項目的未來發展提供指導。


根據谷歌 Google 今天發布的 最新聲明 ,該公司現在也加入.NET 基金會,成為該基金會技術指導小組(Technical Steering Group)的成員,這個小組的成員還包括紅帽、三星、Unity、JetBrains 及微軟 Microsoft 等公司。


由於對 Windows Server 的支持,谷歌 Google 如今已允許其雲平台(Cloud Platform)上的開發者 部署.NET 應用 ,並且在超過 200 個雲服務上提供.NET 運行庫。實際上,谷歌 Google 已經為.NET 基金會的發展做出了一定貢獻。因此,今天的消息並不令人過於吃驚,但作為兩家在諸多領域存在競爭關系的公司,谷歌 Google 和微軟 Microsoft 怎樣在其他項目上找到合作的空間,依舊令外界期待。


此外,三星也在加大對.NET 的投入力度,該公司 Tizen 平台 也開始支持.NET。正如三星高管 Hong-Seok Kim 告訴我的,除了 Web 框架和 C API(Tizen 開發者目前正利用 C API 開發應用),三星還在積極尋找其他替代框架。他說:“我們正在尋找替代框架,.NET 的表現十分突出,”並且指出三星希望理想中的框架在語音支持、API 和工具等方面都能有堅定的基礎,同時還能得到龐大的開發者群體和開源社區的支持。他還說:“.NET 已經存在很長一段時間了,我們很贊賞微軟 Microsoft 對.NET 的開放態度,”並稱微軟 Microsoft 有關.NET 的專利承諾還有助於三星做出今天這一決定


鑒於.NET 現有生態系統,三星肯定希望此舉有助於擴大自家 Tizen 開發者生態系統的影響力。在第一個支持.NETTizen 版本中(今天它將作為開發者預覽版上線),三星團隊專注於讓.NET 融入智能手機這種移動設備類別。盡管如此,在默認情況下,Tizen 仍然是支持眾多不同設備的操作系統,包括電視和手表。隨著時間的推移,三星還計劃將它對.NET 的支持擴大至其他設備上。三星還將向那些尋求為 Tizen 操作系統開發應用的.NET 開發者們,開放 Visual Studio 擴展和文件。


資料來源:谷歌 Google 宣佈加入 .NET 基金會

微軟 Microsort 宣佈加入 Linux 基金會

微軟 Microsort 宣佈加入 Linux 基金會


微軟 Microsoft 周三 宣佈 ,將加入 Linux 基金會 ,並成為付費較高的 白金會員 。這一消息令人意外。

Linux 基金會執行總監吉姆·澤姆林(Jim Zemlin)表示:“你可能對此感到驚訝,微軟 Microsoft 以往並不是 Linux 的粉絲。”然而,在 CEO 薩蒂亞·納德拉(Satya Nadella)的帶領下,微軟正改變以往的策略。目前,微軟已成為開源社區最重要的貢獻者之一。過去幾年,微軟將 Canonical Ubuntu 集成至 Windows 10,使 SQL Server 支持 Linux,將.NET 平台的核心部分開源,並與紅帽、Suse 和其他 Linux 廠商達成了合作協議。正如澤姆林指出的,微軟也對 Linux 基金會管理的多個項目,例如 Node.js、OpenDaylight、Open Container Initiative、R Consortium 和 Open API Initiative 做出了貢獻。


微軟 Microsort 宣佈加入 Linux 基金會


即便如此,今天的消息仍將令許多人感到驚訝。以往,微軟 MicrosoftLinux 基金會曾發生過激烈的糾紛。澤姆林也對此表示承認。“會有一些懷疑,但這將來自一小部分人。開源社區存在反權威的情緒,這很自然。”他指出,當主要公司走向開源之後,情況都會如此。不過他也表示,微軟“討論這一事宜已有很長時間”。

Linux 基金會的白金會員需要支付約 50 萬美元,以獲得相應特權。這些白金會員包括思科、富士通、惠普企業、華為、IBM、英特爾、NEC、甲骨文、高通和三星等。Google、Facebook,以及其他多家知名公司是黃金會員。

微軟 Azure 團隊架構師約翰·戈斯曼(John Gossman)將加入 Linux 基金會的董事會。


資料來源:微軟 Microsort 宣佈加入 Linux 基金會

Twitter Delicious Facebook Digg Stumbleupon Favorites More