原创 PHPer 常用的 Linux 命令

update yum # 命名服務器 hostnamectl set-hostname atong # 更新yum yum update -y && reboot install nginx # 安裝nginx yum -y ins

原创 與 MySQL 的零距離接觸(4~5:數據基礎操作 - 增刪改查)

MySQL 中最基本也是最重要的是 操作數據表中的記錄  ,也就是對數據表中的記錄進行增刪改查操作。 INSERT 添加記錄的三種方式: 1. INSERT ... VALUES ...  INSERT [INTO] table_nam

原创 Swoole 快速起步:創建 WebSocket 服務器(聊天室)

和 HTTP 協議一樣,WebSocket  協議 也是建立在 TCP/IP協議  基礎上的協議 ,但不一樣的是 HTTP 協議 爲單向協議,即瀏覽器只能向服務器請求資源,服務器才能將數據傳送給瀏覽器。 WebSocket 協議 是一種雙

原创 圖解 TCP/IP - 計算機網絡的發展及其通訊協議的理解

參考書籍爲《圖解tcp/ip》-第五版。主要內容還是TCP/IP所必備的基礎知識,包括計算機與網絡發展的歷史及標準化過程(簡述)、OSI參考模型、網絡概念的本質、網絡構建的設備等 一、計算機網絡的背景 1.1 計算機的發展 有人說:“20

原创 Swoole 快速起步:創建 HTTP 服務器

HTTP 協議是建立在 TCP/IP協議  基礎上的協議 ,也就是說,在通過 TCP 三次握手建立了連接之後,數據之間的傳輸需要遵循約定好的規範,如請求報文、響應報文等。 現今主流開源的 HTTP 服務器分別是 apache、 nginx

原创 關於跨域請求及解決方案

跨域問題來源於瀏覽器的同源策略,協議+主機名+端口號 相同,則允許相互訪問。也就是說JavaScript只能訪問和操作自己域下的資源,不能訪問和操作其他域下的資源。 示例: $.ajax({ url: "http://baidu

原创 Swoole 快速起步:創建 TCP 服務器

TCP 協議 (Transport Control Protocol) 屬於傳輸層,在經過三次握手後才建立連接,應用層的大多數協議都基於 TCP 協議完成。  TCP 服務器腳本 1. 創建腳本:server.php <?php //

原创 PHP 視頻操作(ffmpge - 添加水印/視頻壓縮/視頻截圖等)

思路 在Linux 服務器上利用ffmpeg操作視頻,然後利用php函數shell_exec控制服務器執行視頻操作! 1、(CentOS7)安裝 ffmpeg: 1.1 升級yum sudo yum install epel-rel

原创 Duang~MySQLi 擴展庫來襲

PHP-MySQL 函數庫是 PHP 操作 MySQL 資料庫最原始的擴展庫,PHP-MySQLi 的 i 代表 Improvement ,相當於前者的增強版,也包含了相對進階的功能,另外本身也增加了安全性,比如可以大幅度減少 SQL 注

原创 Swoole 快速起步:協程

PHP 語言不支持多線程,因此 Swoole 使用多進程模式。 在多進程模式下存在進程內存隔離,解決方案就是使用 MySQL、MongoDB、Redis 等外部存儲服務。 PHP 提供的 MySQL、CURL、Redis 等客戶端是同步的

原创 Swoole 快速起步:Task 任務機制的使用

Task任務機制實際是 將耗時進程投遞到異步調用事件Task中處理,從而不阻塞主進程; 以 Swoole 快速起步:創建 WebSocket 服務器(聊天室)爲例,在 WebSocket 服務器監聽到新消息相應時,需要一些耗時的操作之後纔

原创 (003)PHP 技巧 * echarts 實現指定日期統計圖

以 ThinkPHP 爲例,其效果示例圖如下: >>> 控制器代碼: public function stat() // 指定日期 $day = input('day') ?: date('Y-m-d',time())

原创 Swoole 快速起步:Timer 毫秒級定時器的使用

swoole 提供了類似 JavaScript 的 setInterval | setTimeout 異步高精度定時器 Timer,與 PHP 本身的 pcntl_alarm 相比,Timer 更精確(毫秒級別)、性能更高(異步)、可同時

原创 (005)PHP 技巧 * GD 庫畫表格圖片演示

一、數據準備 下載字體; 二、示例代碼: <?php // 標題文本 $title = "我是標題"; // 數據 $data = [ ["id" => "ID", "username" => "用戶名", "score" =

原创 (007)PHP 技巧 * 置頂功能(指定數據排在前面)

一、如果數據存儲於 MySQL 數據庫 方法1. 直接使用 ORDER BY 實現 : SELECT * FROM `infos` ORDER BY id IN (4,5) DESC; 方式2. 通過 UNION 聯合查詢實現 SEL