PHPackages                             jsnlib/ao - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. jsnlib/ao

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

jsnlib/ao
=========

easy use ArrayObject

1.2.2(8y ago)03179MITPHPPHP &gt;=5.4.0

Since Mar 8Pushed 8y agoCompare

[ Source](https://github.com/fdjkgh580/jsnlib-ao)[ Packagist](https://packagist.org/packages/jsnlib/ao)[ RSS](/packages/jsnlib-ao/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (5)Used By (9)

jsnao
=====

[](#jsnao)

v 1.1.4

簡易的讓陣列(或其他格式)，可以使用更好懂的物件風格來呼叫。例如

```
$data = array('say' => 'hello');
```

我們可以直接這麼使用

```
echo $data->say; // 輸出 hello
```

其他說明可以看：[我的部落格](http://jsnwork.kiiuo.com/archives/137/php-jsnao-%E7%B9%BC%E6%89%BF-arrayobject-%E6%9B%B4%E6%96%B9%E4%BE%BF%E7%9A%84%E9%99%A3%E5%88%97%E8%BD%89%E7%89%A9%E4%BB%B6%E5%AF%AB%E6%B3%95)

支持多種格式輸入的範例
-----------

[](#支持多種格式輸入的範例)

### 陣列 Array

[](#陣列-array)

```
$mix = array('my'=>"Jsnao");
$result = new Jsnao($mix);
$result->my; // 輸出: Jsnao
```

### JSON

[](#json)

```
$mix = '{"my":"Jsnao"}';
$result = new Jsnao($mix);
$result->my; // 輸出: Jsnao
```

### 物件 Object

[](#物件-object)

```
$mix = new stdClass;
$mix->my = "Jsnao";
$result = new Jsnao($mix);
$result['my']; // 輸出: Jsnao
```

### 字串 String

[](#字串-string)

```
$mix = 'Hello World';
$result = new Jsnao($mix);
$result->data; // 輸出: Hello World
```

### 整數或小數 Integer or Double

[](#整數或小數-integer-or-double)

```
$mix = 123456;
$result = new Jsnao($mix);
$result->data; // 輸出: 123456
```

### 空值 Null

[](#空值-null)

```
$mix = null;
$result = new Jsnao($mix);
```

一般用法
----

[](#一般用法)

```
include_once("../jsnao.php");

$cart = array
(
    'A001'   =>  array
    (
        'name'  =>  'apple',
    ),
    1000 => array
    (
        'name'  => 'water'
    )
);
$cart = new jsnao($cart);

// 取值
$cart->A001->name; //output: apple
// 或
$cart->get(1000)->name;

// 賦值
$cart->A002 = array('name' => 'banana');
// 或
$cart->A002 = array();
$cart->A002->name = 'banana';
// 或
$cart->put(2000, array('name' => 'lemon'));

// 修改
$cart->A001->name = 'cherry';
// 或
$cart->A001->put('name', 'cherry');

// 刪除
$cart->A003 = array('name' => 'bag');
unset($cart->A003);

echo $cart;
```

陣列用法
----

[](#陣列用法)

```
