adadgio / common
Adadgio Commons
2.1.0
2019-07-23 08:50 UTC
Requires
- php: >=5.3
README
安装
使用 composer 安装
composer require adadgio/common
目录
Curl
用于执行 Curl 请求(GET 或 POST)并返回结果
use Adadgio\Common\Http\Curl; // GET request $curl = new Curl(); $response = $curl ->get('http://example.com', array('query_param_1' => 'query param value')); // or POST request with params $curl = new Curl(); $response = $curl ->setContentType(Curl::JSON) // other options are JSON|XML|TEXT|FORL_URLENCODED|FORM_MULTIPART ->post('http://example.com', array('post_field_1' => 'psot field value')); // POST request with more options $curl = new Curl(); $response = $curl ->setContentType(Curl::JSON) // other options are JSON|XML|TEXT|FORL_URLENCODED|FORM_MULTIPART ->setAuthorizationBasic('Token', 'user', 'pass') // or ->setAuthorization('Basic', base64_encode('user:pass')) // or ->setAuthorization('Token', yO3my4To3en) ->setCookies(true) // ->addHeader('X-Custom-Header', 'CUst0mApiK3y') ->verifyHost(false) // or ->addOption(CURLOPT_SSL_VERIFYHOST, false) ->verifyPeer(true, "/home/my/server/cacert.pem") // second param is empty but you should set it in php.ini ->post('http://example.com', array('post_field_1' => 'psot field value'));
UrlHelper
帮助检查 URL 是否为相对路径或绝对路径,标准化 URL,获取协议,检查协议是否为空...
所有方法均在 UrlHelper.php 中有注释
ParamResolver
两种方法用于判断值是否为有效的数组或有效的整数(>0)。如果不是这种情况,则返回默认值参数。
use Adadgio\Common\ParamResolver; $arrayToTest = array( 'one' => true, 'barbar' => 29393, 'first' => 'foo', ); $defaultArray = array( 'one' => false, 'second' => 'yolo', ); $array = ParamResolver::toArray($arrayToTest, $defaultArray);
use Adadgio\Common\ParamResolver; $integer = ParamResolver::toInt(430, 0);
JsonResponse
自定义的简单响应对象处理器,用于响应 JSON 数据
use Adadgio\Common\JsonResponse; // $data is an object or an array $data = array('yes' => 'no', 'bar' => 'foo'); // default response code is 200 $code = 200; // specific headers, default: array() $headers = array(); $array = JsonResponse::fire($data, $code, $headers);
自
此工具返回人类可读的日期以显示,如几秒钟...默认参考值为当前日期和时间,可以在第二个参数中设置自定义参考值。
use Adadgio\Common\Moment\Since; // Examples with referential date: "2016-07-29 12:00:00" Since::format(new \DateTime('2016-06-29 09:00:00')); // 09:00 Since::format(new \DateTime('2016-07-28 22:00:00')); // Yesterday Since::format(new \DateTime('2016-07-29 12:00:00')); // Now Since::format(new \DateTime('2016-07-29 11:59:55')); // 5 seconds