首頁 >後端開發 >php教程 >為什麼我建立了在其他地方找不到的 Laravel 編碼包

為什麼我建立了在其他地方找不到的 Laravel 編碼包

Mary-Kate Olsen
Mary-Kate Olsen原創
2025-01-05 12:02:40688瀏覽

Why I Built the Laravel Encoding Package I Couldn’t Find Anywhere Else

在我的一個 Laravel 專案中,我遇到了一個挑戰:

我需要有效地編碼和解碼字串。最初,我轉向 Laravel 內建的加密和解密函數。當他們工作時,編碼的字串太長並且不適合我的用例,使得 URL 變得混亂並且不適合共享..

然後我嘗試了Base64編碼。它更接近我所需要的,但使其 URL 安全性增加了不必要的複雜性。由於缺乏一體化解決方案而感到沮喪,我意識到沒有一個簡單的套件可以使用可自訂且 URL 安全的方法來編碼 ID 和字串。

所以,我決定創建一個。

最初是一個 Laravel 專用工具,很快就發展成為一個獨立的套件,能夠在任何 PHP 專案中使用。此套餐提供:

  • 簡單安全的編碼/解碼機制。
  • 內建支援 URL 安全 Base62 編碼。
  • 可自訂新增更多編碼方案,例如 Base58、Base64,甚至是您自己的。
  • 此套件非常適合建立 URL 安全性令牌、編碼資料庫 ID 或任何需要輕量級安全編碼的場景。

此軟體包為需要輕量級但功能強大的解決方案來編碼和解碼專案中的字串和 ID 的開發人員提供了橋樑。

使用 Composer 安裝軟體套件:

composer require nassiry/laravel-encoder

Laravel 用法

use Nassiry\Encoder\Facades\Encoder;

// Encode and Decode IDs
$encodedId = Encoder::encodeId(12345, 4);
$decodedId = Encoder::decodeId($encodedId);

// Encode and Decode Strings
$encodedString = Encoder::encodeString('Hello World');
$decodedString = Encoder::decodeString($encodedString);

獨立使用

require __DIR__ . '/vendor/autoload.php';

use Nassiry\Encoder\Encoder;

// Create an encoder instance
$encoder = new Encoder();

// Encode an ID
$encodedId = $encoder->encodeId(12345, 4);
echo "Encoded ID: $encodedId\n"; // Example output: 9FNp

// Decode the encoded ID
$decodedId = $encoder->decodeId($encodedId);
echo "Decoded ID: $decodedId\n"; // Output: 12345

我希望這個包能像我一樣幫助簡化您的程式設計需求。
請隨時在 GitHub 上分享您的回饋或為該專案做出貢獻!

有關更多資訊和範例,請參閱 GitHub 儲存庫。

以上是為什麼我建立了在其他地方找不到的 Laravel 編碼包的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn