Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

json2php

Package Overview
Dependencies
Maintainers
2
Versions
11
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

json2php

JSON to PHP converter

  • 0.0.8
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
69K
increased by3.59%
Maintainers
2
Weekly downloads
 
Created
Source

json2php

Installation

To install json2php you could clone the project from Github or use NPM to install it.

$ npm install json2php

Usage

Convert JavaScript object/array/string/number/boolean to string that is the corresponding PHP representation.

String

When the content is just a string the output will be the same string.

s = json2php('Hello World!')
// => s = 'Hello World!'
Number

Numbers are the same.

s = json2php(123)
// => s = '123'
Boolean
s = json2php( true )
// => s = 'true'
Undefined/Null

null and undefined are returned as null

s = json2php(undefined)
// => s = 'null'
Array
s = json2php([1, 2, 3])
// => s = 'array(1, 2, 3)'
Object
s = json2php({a: 1, b: 2, c: 'text', false: true, undefined: null})
// => s = "array('a' => 1, 'b' => 2, 'c' => 'text', 'false': true, 'undefined': null)"
Non-valid JSON
s = json2php(new Date())
// => s = "null"

Pretty printing

Create custom 'printers' with json2php.make:

const printer = json2php.make({linebreak:'\n', indent:'\t', shortArraySyntax: true})
printer({one: 3, two: 20, three: [9, 3, 2]})

/* result:.
[
	'one' => 3, 
	'two' => 20, 
	'set' => [
		9, 
		3, 
		2
	]
]
*/

Compressing the output

To compress the output (e.g. to make the resulting PHP as small as possible), use shortArraySyntax with stripSpaces:

const printer = json2php.make({shortArraySyntax: true, stripSpaces: true})
printer({
  arr: [1, 2, 3, 4, 5, {foo: 'surprise!'}],
  obj: {
    arr: [{foo: 'bar', bar: 'baz', arr2: [1, 2]}]
  }
})

// result:
// ['arr'=>[1,2,3,4,5,['foo'=>'surprise!']],'obj'=>['arr'=>[['foo'=>'bar','bar'=>'baz','arr2'=>[1,2]]]],'test'=>'str']

For Contributors

Tests

To run test we use mocha framework.

$ npm test
CoffeeScript Source

But in any case you will depend on coffee-script

$ npm run build

Changelog

0.0.8
  • Add stripSpaces to pretty print options (thanks to @noahtallen)
0.0.7
  • Add shortArraySyntax to pretty print options
0.0.6
  • Add pretty print capability via json2php.make (thanks to @stokesman)
0.0.5
  • Update and clean up (thanks to @SumoTTo)
  • Add boolean type (thanks to @SumoTTo)
0.0.4
  • Fix for single quotes escaping (thanks to @ksky521)
0.0.3
  • Fixed the case when non-valid JSON is passed
  • Fixing the bug with the object section
0.0.2
  • Adding the package.json to Git repository, also package dependency
  • Changes into the file structure
  • Adding CoffeeScript source ( Not finished yet )
  • Adding Cakefile and task test
  • Adding Mocha for test framework.
  • Adding test, src, lib directory
  • Adding tests
0.0.1
  • Init the project into NPM
  • module.exports for Node.js
  • Added json2php into the global scope with global.json2php

Keywords

FAQs

Package last updated on 09 Apr 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc