ThinkSNS Plus PHP開發概述

Plus (讀音:[plʌs],全稱:ThinkSNS+ [θɪŋk es en es plʌs],是 ThinkSNS 系列產品一個重要版本,其軟件識別名稱爲 Plus 即 +) 是一個基於 Latest Laravel 框架進行開發的一個功能強大、易於開發和強拓展的社交系統。與其餘開源社交程序不一樣的是 Plus 擁有多年社交系統經驗,不只易於上手,還便於應用拓展。另外一方面,程序採用 PHP 7 嚴格模式,從根本上儘可能避免弱級錯誤的產生。同時由於從零開始選擇較好的帶有較好 ORM 的緣由,Plus 容許你更具你的需求使用不一樣數據庫。

   若是你想深刻學習 Plus,咱們爲你準備了大量教程級文檔。哪怕你不會 Laravel 框架,也能讓你入門框架基礎,並勝任 Plus 應用開發。

   若是你是有經驗的 PHPer,那麼你能夠了解現代流行框架差別,Laravel 就是現代留下框架的佼佼者之一。

PHP 環境要求

重點php

你可能尚未很好的 Liunx 知識,不要緊,後面的教程會擬定你是零基礎的前提下教學,可是下面的環境要求限制,你須要重點記憶,這是程序可否運行的關鍵所在!mysql

PHP 版本

您的 PHP 必須大於或者等於 7.1.3 版本,固然,咱們推薦 7.2. 版本。sql

函數

在許多集成環境中,默認會禁用一些函數,固然,這些函數在 Plus 的 Web 服務中不是必須的,可是若是你在 CLI 環境下操做,這些函數將會成爲必須:shell

· exec數據庫

· systemjson

· scandirbash

· symlink服務器

· shell_exec微信

· proc_open框架

· proc_get_status

拓展

這些拓展是 Plus 運行時必須的拓展,你必須包裝你的 PHP 環境已安裝這些拓展:

· dom 用於解析 XML 等文檔使用

· fileinfo 用於文件上傳,或者獲取文件 Meta 信息使用

· GD 用於圖片處理的庫

· json 通常 PHP 內核自帶,用於處理 JSON 文檔和轉換

· mbstring 用於兼容性的字符串處理

· openssl 用於應用祕鑰加密等,同時也是內部請求 HTTPS 資源使用

· PDO 數據庫操做抽象庫

選擇性拓展

選擇性拓展是更具你的需求,選擇性安裝的拓展,選擇性拓展以下:

· pdo_mysql 若是你使用 MySQL 數據庫,則必須安裝

· pdo_pgsql 若是你使用 PostgreSQL 數據庫,則必須安裝

· pdo_sqlite 若是你使用 SQLite 數據庫,則必須安裝

· pdo_dblib 若是你使用 Microsoft SQL Server 數據庫,則必須安裝

可選或替換性拓展

· imagick 此庫是一個比 GD 庫處理圖片更好的一個拓展,能夠用於替換 GD 庫,此庫爲可選性,安裝後不可卸載 GD 庫,GD 庫能夠用於更加高效的圖片基礎處理。

數據庫

Plus 支持四種數據庫的使用,可是我僅推薦使用兩個數據庫。

· MySQL | MariaDB

o MySQL 請使用 >= 5.7 版本,固然,若是能用 MySQL 8 再好不過。

o MariaDB 是 MySQL 原做者後開發的一款關係型數據庫,兼容 MySQL,若是你要使用,請選擇大於或等於 10.3 版本。

· PostgreSQL 數據庫是及其推薦的一個數據庫,費用高昂可是起計算性能很是好,有條件能夠直接使用。

· SQLite 是一個輕量級數據庫,若是你只是想體驗卻是不妨嘗試,問題在於 SQLite 對於 Emoji 的儲存有待改善(目前都不支持存儲 Emoji)因此原則上 Plus 是不容許使用 SQLite 的。

· Microsoft SQL Server 就像不推薦 SQLite 同樣,咱們一樣不推薦 Microsoft SQL Server 除非你肯定你的系統不適用 Emoji 那麼你能夠無顧慮的使用 Microsoft SQL Server 了,由於 Microsoft SQL Server 一樣支持 utf8 字符集,卻沒法支持四位長度的 Emoji 字符。

WARNING

答應我,在 SQLite 和 Microsoft SQL Server 沒有很好默認支持 Emoji 以前,暫時用 MySQL 或者 PostgreSQL 好嗎?我是認真的!否則你會遇到不少奇怪的問題!

教程說明

從後面的教程開始,咱們將從零基礎開始教學,教學環境爲 CentOS 7.4 版本的 Linux。教學環境以下:

· 教學使用服務器系統: CentOS 7.4

· 教學者使用系統: macOS

· SSH 工具: Termius

· 教學 PHP 版本:7.2

· 教學 MySQL 版本: 5.7

· 教學 Web 組件:Nginx

教學內容包括:

· 登入 Linux

· 安裝 PHP 7.2

· 安裝 MySQL 5.7

· 安裝 Plus

· Nginx 安裝

· 發佈站點

登入 Linux

這裏虛擬一臺主機,其 IP 地址咱們假設爲 hostname(正常狀況下是一段 IP 地址),端口爲 22,操做用戶爲 root。

在你的 SSH 工具中輸入 ssh root@hostname -p 22 而後回車。而後輸入你的主機密碼便可。

hostname 等信息登陸的時候替換爲你的真實信息。

咱們進入主機後,會進入用戶家目錄,若是你不知道家目錄在說明爲主,輸入 pwd 命令便可看到。

編譯 PHP

本章將會帶領你在 CentOS 7.4 系統上編譯安裝 PHP 7.2 環境,以及缺乏的拓展安裝。

下載源碼

咱們打開PHP 官網下載頁找到最新的 PHP 7.2 版本,以 7.2.9 爲例:

圖片描述

咱們點擊綠色框部分的的地址,最後咱們經過選擇地區後獲得最終地址爲:http://cn2.php.net/distributi...

咱們獲得文件下載地址後,登入 Linux,咱們如今在服務器下載 PHP 源碼,下載咱們使用 curl 命令下載,檢查你的服務器是否有這個命令輸入 curl --help 若是有很大一串內容輸出,則表示有該命令,若是輸出內容爲:

-bash: curl: command not found

那麼,咱們使用 CentOS 自帶的 yum 命令進行安裝:

yum install -y curl

等待命令執行完成便可,執行完成後,咱們下載 PHP 源碼:

curl -o php-7.2.9.tar.xz http://cn2.php.net/distributi...

WARNING

若是你沒法找到準確的文件下載地址,那麼你點擊綠色框的連接,會進入地區選擇頁面,例如你選擇 China 地區,你會看到一個 cn2.php.net 的連接,鼠標放上去,「右鍵」點擊「複製連接地址」你粘貼後會獲得 http://cn2.php.net/get/php-7.... 這樣的地址,如圖:

圖片描述

複製獲得地址後,咱們運行下面的命令進行下載:

curl -L -o php-7.2.9.tar.xz http://cn2.php.net/get/php-7....

解壓源碼

解壓源碼以前,請先下載解壓工具:

yum install -y tar xz

而後咱們先將 XZ 歸檔解壓爲 tar 歸檔:

xz -d php-7.2.9.tar.xz

執行完成後,咱們輸入 ls 命令,你會看到如今 php-7.2.9.tar.xz 文件已經消失,而多出一個 php-7.2.9.tar 歸檔。此時咱們來解壓這個 tar 歸檔:

tar -xvf php-7.2.9.tar

解壓完成後,運行 ls 命令會看到,多出一個 php-7.2.9 的目錄了,好了咱們如今就獲得了源碼。

若是你解壓步驟失敗,多是下載的文件不是 .tar.xz 後綴歸檔,也有多是下載過程當中數據丟包,不用擔憂。你從新下運行 rm -rf php-7.2.9* 命令,將你以前下載的刪除,而後從新下載便可。

For 企業/商業:利用ThinkSNS軟件系統可快速搭建所需的網站/微信版/APP 軟件,無須從 0 開發,省時省心省研發成本;

For 創業者:ThinkSNS提供優秀創業扶持優惠,助力創業初期完美起飛;

For 我的粉絲:ThinkSNS10 年開源,提供業內開發參考,免費體驗使用;

For 開發者:ThinkSNS採用可持續發展的框架開發,底層穩固文檔清晰,支持深度二次開發。

軟件系統圖示僅供參考,更多功能細節請體驗:

ThinkSNS官網:http://www.thinksns.com/

相關文章
相關標籤/搜索