原创 基於 hyperf 微服務框架 +layim 開發的一套聊天系統!

簡介 hyperf-im 是基於 Hyperf 微服務協程框架和 Layim 網頁聊天系統 所開發出來的聊天室。 體驗地址 hyperf-im im.jayjay.cn 功能 Github hyperf-im 登錄註冊(Http) 單點登

原创 基於laravel製作API接口

基於laravel製作API接口 關於APIAPI(Application Programming Interface,應用程序編程接口)是一些預先定義的函數,目的是提供應用程序與開發人員基於某軟件或硬件得以訪問一組例程的能力,而又無需訪問

原创 關於 Laravel ORM 對 Model::find 方法進行緩存

前段時間做項目時候,想要在不改變方法簽名的情況下,給 Model::find 方法做個緩存。而且想要做到即插即用。 1.先看一下當我們調用 find 方法時,框架幹了什麼? 找到 Illuminate\Database\Eloquent\M

原创 laravel安裝jwt-auth及驗證(實例)

laravel 安裝jwt-auth及驗證   1、使用composer安裝jwt,cmd到項目文件夾中; composer require tymon/jwt-auth 1.0.*(這裏版本號根據自己的需要寫) 安裝jwt ,參考官方文檔

原创 理解 PHP 8 的 JIT

    TL;DR PHP 8 的 JIT(Just In Time)編譯器將作爲擴展集成到 php 中 Opcache 擴展 用於運行時將某些操作碼直接轉換爲從 cpu 指令。 這意味着使用 JIT 後,Zend VM 不需要解釋某些操

原创 在 Laravel 7 中優雅使用 UUID 教程

最近我不得不在 Laravel 7 實現 通用唯一識別碼 ( UUIDs ),並遇到一些問題。我希望這帖子可爲其他正在做相同事情的人解惑。 使用 UUIDs 的高級理由 A) 它們從你的 統一資源定位符 移除編號的 身份識別號 ,故用戶不能

原创 Laravel 文件緩存也可以快得飛起,tmpfs 瞭解一下

截至 Laravel 7,共有 6 個可用的緩存驅動程序,其中 APC 是最佳實踐,而文件驅動程序是唯一不需要額外設置的驅動程序。 我昨晚與一位朋友交談,他提到他們使用 Redis 作爲緩存驅動程序,這讓我想到我還有一個仍然使用文件驅動程序

原创 你是否真的懂 [程序的運行順序] 多進程 / 進程池

linux 如何運行一個程序 linux 在運行任何程序之時,都要調用 execve 系統調用函數,然後把你的程序和你給的參數以及環境參數扔給程序的入口函數。 入口函數 php【php 腳本依賴 php 解釋器】解釋器運行,源碼就是 c

原创 新抽象語法樹(AST)給 PHP7 帶來的變化

本文大部分內容參照 AST 的 RFC 文檔而成:https://wiki.php.net/rfc/abstract_syntax_tree,爲了易於理解從源文檔中節選部分進行介紹。 我的官方羣點擊此處。 本文並不會告訴你抽象語法樹是什麼,

原创 Nano v1.0 發佈!一個 PHP 文件搭建 Hyperf 應用

Nano, by Hyperf Nano 是一款零配置、無骨架、極小化的 Hyperf 發行版,通過 Nano 可以讓您僅僅通過 1 個 PHP 文件即可快速搭建一個 Hyperf 應用。 設計理念 Svelte 的作者提出過一個論斷:“框

原创 分享五個 Laravel Dusk 的使用技巧

Laravel Dusk 是 Laravel 的一個表達性強、易於使用,且功能強大的瀏覽器自動化測試工具。通過 Dusk 可以以編程的方式測試 JavaScript 驅動的應用程序。在使用 Dusk 編寫測試案例時,我經常遇到一些限制。現在

原创 教你用兩行代碼給PHP7添加一個“非空合併”語法糖

我們知道從 PHP 5.3 起三元運算符 ? : 有一個寫法簡潔寫法是這樣的:   <?php $a = 0; $b = $a ?: 1; # $b === 1    這實際上相當於: <?php $a = 0; $b = $

原创 Linux 上安裝 PHP 擴展

我一般會選用源碼安裝 php,安裝 php 的過程指定要安裝的擴展,但是避免不了缺少某個擴展未安裝導致程序運行報錯的問題。以 fileinfo 爲例,介紹一下怎麼添加 php 擴展。 1. 準備 通常遇到報錯:xxx function un

原创 讓你的Laravel 應用運行速度飛起來!(利用PHP OPcache)

什麼是 Opcache   每一次執行 PHP 腳本的時候,該腳本都需要被編譯成字節碼,而 OPcache 可以對該字節碼進行緩存,這樣,下次請求同一個腳本的時候,該腳本就不需要重新編譯,這極大節省了腳本的執行時間,從而讓應用運行速度更快,

原创 基於 Redis 的訂閱與發佈

Github 倉庫 demo-redis-subscribe 創建項目 $ composer create hyperf/biz-skeleton demo-redis-subscribe dev-master Installing h