2017 © Pedro Peláez
 

library jsonp-parser

processing of JSONP decoding and encoding.

image

rmtram/jsonp-parser

processing of JSONP decoding and encoding.

  • Saturday, April 23, 2016
  • by Rmtram
  • Repository
  • 2 Watchers
  • 1 Stars
  • 481 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 2 Versions
  • 4 % Grown

The README.md

Build Status Total
Downloads Latest Stable
Version, (*1)

JsonpPaser

The processing of JSONP decoding and encoding., (*2)

Install

composer require rmtram/jsonp-parser

Usage

Encoder

  • encode
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->encoder(['name' => 'example'])
    ->encode();
// default callbackName = callback
string(28) "callback({"name":"example"})"

  • change callback name.
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->encoder(['name' => 'example'])
    ->callback('example')
    ->encode();
string(28) "example({"name":"example"})"

  • depth(default 512)
  • PHP 5.5 and over
  • PHP Version 5.4 can not be used
$parser = new Rmtram\JsonpParser\Jsonp();
$parser
    ->encoder([['name' => 'example']])
    ->depth(1)
    ->encode();
false

  • option(default 0)

@link json.constants http://php.net/manual/en/json.constants.php, (*3)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser
    ->encoder([['name' => 'example']])
    ->option(JSON_UNESCAPED_UNICODE)
    ->encode();

Decoder

  • toArray
$parser = new Rmtram\JsonpParser\Jsonp();
var_dump($parser->decoder('callback({"name": "example"})')->toArray());
array(1) {
  ["name"]=> string(7) "example"
}

  • toObject
$parser = new Rmtram\JsonpParser\Jsonp();
var_dump($parser->decoder('callback({"name": "example"})')->toObject());
object(stdClass)#45 (1) {
  ["name"]=> string(7) "example"
}

  • trim the EOL.
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->decoder('callback(
{"name":"example"})'
)->trimEOL()->toArray();
array(1) {
  ["name"]=> string(7) "example"
}
  • not trim the EOL.
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->decoder('callback(
{"name":"example"})'
)->toArray();
null

  • depth(default 512)
$parser = new Rmtram\JsonpParser\Jsonp();
$parser
    ->decoder('callback([{"name": "example"}])')
    ->depth(1)
    ->toArray();
null

  • option(default 0)

@link json.constants http://php.net/manual/en/json.constants.php, (*4)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser
    ->decoder('callback([{"name": "example"}])')
    ->option(JSON_BIGINT_AS_STRING)
    ->toArray();

Util

  • check jsonp format.
//@param string $jsonp jsonp string.
//@param boolean $trimEOL (trim CR+LF/CR/LF) 
//@param boolean $strict true => 'regex and json_decode', false => 'regexp'
is($jsonp, $trimEOL = false, $strict = true)
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback([1,2,3])');
true
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback[1,2,3])');
false

trim eol, (*5)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback(
[1,2,3])', true);
true
$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback(
[1,2,3])', false);
false

strict mode, (*6)

normal, (*7)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback([1,2,3])(1,2,3)', false, false);
true

strict, (*8)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback([1,2,3])(1,2,3)', false, true);
false

normal, (*9)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback([1,2,3])(1,2,3', false, false);
false

strict, (*10)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback([1,2,3])(1,2,3', false, true);
false

normal, (*11)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback(example)', false, false);
true

strict, (*12)

$parser = new Rmtram\JsonpParser\Jsonp();
$parser->is('callback(example)', false, true);
false

Support Version

  • PHP 5.4
  • PHP 5.5
  • PHP 5.6
  • PHP 7
  • HHVM

LICENSE

MIT LICENSE, (*13)

The Versions

23/04 2016

dev-master

9999999-dev https://github.com/Rmtram/JsonpParser

processing of JSONP decoding and encoding.

  Sources   Download

MIT

The Development Requires

by Avatar Rmtram

jsonp jsonp parser jsonp encode jsonp decode

23/04 2016

v1.0.0

1.0.0.0 https://github.com/Rmtram/JsonpParser

processing of JSONP decoding and encoding.

  Sources   Download

MIT

The Development Requires

by Avatar Rmtram

jsonp jsonp parser jsonp encode jsonp decode