gokulsrinivas/sangria

此包的最新版本(1.0.1)没有可用的许可证信息。

一组有用的库,可以让生活更轻松。

1.0.1 2016-08-08 12:28 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:04:02 UTC


README

一套轻量级的PHP库,让您的编程更轻松。

常见问题解答: 为什么叫Sangria?

答: 因为我喜欢 这首歌,我也喜欢喝/吃 水果

安装

  • "gokulsrinivas/sangria":"dev-master" 添加到您的 composer.json 文件中的 "require" 部分。
  • 执行 composer install
  • 如果您不使用laravel等框架,请确保在您的文件中包含 include "vendor/autoload.php"vendor 是composer install后创建的文件夹。
  • 使用 use Sangria\JSONResponse / IMAPAuth / LDAPAuth / HelperFunctions
  • 以下为使用示例。
  • 编写更简洁的代码。
  • 感觉棒极了。
  • 构建酷炫的东西。
  • 快乐编程!

使用方法

Sangria\JSONResponse

这个类对需要返回字符串、对象、集合等JSON表示的API开发者很有帮助。

这个类遵循以下JSON结构。

{
  "status_code": 200,
  "message": "OK"
}
  • 使用 use Sangria\JSONResponse; 包含这个类
  • 定义 JSONResponse::response($status_code=400,$message=NULL,$strict_mode=false)
  • $status_code 可以是HTTP状态码或您自己的自定义状态码。
  • 如果 $status_code 是HTTP状态码且消息为 NULL,将添加一个默认的 原因短语。(如果 $strict_modefalse(默认))
  • 如果 $strict_mode 设置为 true,则对作为 $message 给定的数据进行编码。所以,NULL 被编码为 null
  • $status_code 的默认值为 400。
  • Sangria\JSONResponse 可以在Laravel中安全使用,因为所有eloquent模型和集合都可以作为 $message 传递。

示例代码

<?php

use Sangria\JSONResponse;

$status_code = 200;
$message = new StdClass();
$message->prop1 = "asdf";
$message->prop2 = array("asdf");
$message->prop3 = array(array("asdf"));
$message->prop4 = true;

$response_string = JSONResponse::response($status_code,$message);
echo $response_string;

输出

{
  "status_code": 200,
  "message": {
    "prop1": "asdf",
    "prop2": [
      "asdf"
    ],
    "prop3": [
      [
        "asdf"
      ]
    ],
    "prop4": true
  }
}

Sangria\IMAPAuth

这个类对于只需要通过IMAP验证用户名/密码组合的开发者很有用。

  • 使用 use Sangria\IMAPAuth; 包含这个类
  • 定义 IMAPAuth::auth($user_name,$user_pass,$imap_option="/imap/ssl/novalidate-cert",$imap_retries=0)
  • $imap_option 是以 / 开头的字符串,如 php.net 上imap页面列出的 名称的可选标志
  • 如果 $imap_retries 是重试次数。

配置

  • 请将 __SANGRIA_IMAP_SERVER_ADDR____SANGRIA_IMAP_SERVER_PORT__ 设置为您想要的地址和端口,在通过composer安装时,在 vendor/gokulsrinivas/sangria 中的 config.php 中进行设置。

示例代码

<?php

use Sangria\IMAPAuth;

if(IMAPAuth::auth('username','********'))
{
	echo "Authenticated";
}
else
{
	echo "Authentication Failed";
}

输出

Authenticated

Sangria\LDAPAuth

这个类对于只需要通过LDAP验证用户名/密码组合的开发者很有用。

  • 使用 use Sangria\LDAPAuth; 包含这个类
  • 定义 LDAPAuth::auth($user_name,$user_pass)

配置

  • 请将 __SANGRIA_LDAP_SERVER_ADDR__ 设置为您想要的地址,在通过composer安装时,在 vendor/gokulsrinivas/sangria 中的 config.php 中进行设置。

示例代码

<?php

use Sangria\LDAPAuth;

if(LDAPAuth::auth('username','********'))
{
	echo "Authenticated";
}
else
{
	echo "Authentication Failed";
}

输出

Authenticated

Sangria\HelperFunctions

这个类对开发和调试非常有帮助。它包括dd()ddp()isEmail()函数,可以加快您的开发速度。

* dd()

在调试过程中,您可能需要使用var_dump()显示变量并使用die()。这个函数可以帮助您做到这一点。

源代码

<?php
use Sangria\HelperFunctions;

$a = 4*"2";
Helperfunctions::dd($a);
echo "done";

输出

int(8)

* ddp()

在调试过程中,您可能需要使用var_dump()显示变量并使用die()。如果您的对象很复杂,或者您想在javascript中使用输出的数据,可能需要它以JSON格式。这个函数可以帮助您做到这一点。

源代码

<?php
use Sangria\HelperFunctions;

$a = new StdClass();

$a->name = "Hello";
$a->surname = "World";
$a->nicknames = ["Hi",["My","Name","Is"],"Sangria"];
$a->adult = true;
$a->balance = 2334.34;
$a->age = 19;

Helperfunctions::ddp($a);
echo "done";

输出

{
    "name": "Hello",
    "surname": "World",
    "nicknames": [
        "Hi",
        [
            "My",
            "Name",
            "Is"
        ],
        "Sangria"
    ],
    "adult": true,
    "balance": 2334.34,
    "age": 19
}

* isEmail()

这个函数用来检查给定的字符串是否是有效的电子邮件地址。

源代码

<?php
use Sangria\HelperFunctions;

$email_string = "hi    @hi.com";

if(Helperfunctions::isEmail($email_string))
{
	echo "Valid Email";
}
else
{
	echo "Invalid Email";
}

输出

Invalid Email

贡献

测试永远不够。欢迎编写更多的测试用例!

如果您想添加功能、改进它们或报告问题,请随意发送拉取请求!请为新功能包含测试用例。

贡献者

戈库尔·斯里尼瓦桑

许可证

MIT