NOTE: For Version 3 of the AWS SDK for PHP, please see the V3 User Guide and V3 API Reference.

# Class ReadLimitEntityBody

EntityBody decorator used to return only a subset of an entity body

  Guzzle\Http\AbstractEntityBodyDecorator implements Guzzle\Http\EntityBodyInterface
  Guzzle\Http\ReadLimitEntityBody

Namespace: Guzzle\Http
Located at Guzzle/Http/ReadLimitEntityBody.php

## Methods summary

- `public` `__construct ( Guzzle\Http\EntityBodyInterface $body, int $limit, int $offset = 0 )`
- `public` `__toString ( )`

  Returns only a subset of the decorated entity body when cast as a string Convert the stream to a string if the stream is readable and the stream is seekable.

- `public` `isConsumed ( )`

  Check if the stream has been consumed

- `public` `getContentLength ( )`

  Returns the Content-Length of the limited subset of data Get the Content-Length of the entity body if possible (alias of getSize)

- `public` `seek ( int $offset, int $whence = SEEK_SET )`

  Allow for a bounded seek on the read limited entity body Seek to a position in the stream

- `public` `setOffset ( int $offset )`

  Set the offset to start limiting from

- `public` `setLimit ( int $limit )`

  Set the limit of bytes that the decorator allows to be read from the stream

- `public` `read ( int $length )`

  Read data from the stream

## Methods detail

# `public`
`__construct( `Guzzle\Http\EntityBodyInterface` $body, integer $limit, integer $offset = 0 )`

#### Parameters

$body
  ``Guzzle\Http\EntityBodyInterface``
  $body Body to wrap
$limit
  `integer`
  $limit Total number of bytes to allow to be read from the stream
$offset
  `integer`
  $offset Position to seek to before reading (only works on seekable streams)

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::__construct`
# `public string`
`__toString( )`

Returns only a subset of the decorated entity body when cast as a string Convert the stream to a string if the stream is readable and the stream is seekable.

#### Returns

`string`

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::__toString`
# `public boolean`
`isConsumed( )`

Check if the stream has been consumed

#### Returns

`boolean`

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::isConsumed`
# `public integer|boolean`
`getContentLength( )`

Returns the Content-Length of the limited subset of data Get the Content-Length of the entity body if possible (alias of getSize)

#### Returns

`integer|boolean`
Returns the Content-Length or false on failure

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::getContentLength`
# `public boolean`
`seek( integer $offset, integer $whence = SEEK_SET )`

Allow for a bounded seek on the read limited entity body Seek to a position in the stream

#### Parameters

$offset
  `integer`
  $offset Stream offset
$whence
  `integer`
  $whence Where the offset is applied

#### Returns

`boolean`
Returns TRUE on success or FALSE on failure

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::seek`
# `public `Guzzle\Http\ReadLimitEntityBody``
`setOffset( integer $offset )`

Set the offset to start limiting from

#### Parameters

$offset
  `integer`
  $offset Offset to seek to and begin byte limiting from

#### Returns

``Guzzle\Http\ReadLimitEntityBody``
# `public `Guzzle\Http\ReadLimitEntityBody``
`setLimit( integer $limit )`

Set the limit of bytes that the decorator allows to be read from the stream

#### Parameters

$limit
  `integer`
  $limit Total number of bytes to allow to be read from the stream

#### Returns

``Guzzle\Http\ReadLimitEntityBody``
# `public string|boolean`
`read( integer $length )`

Read data from the stream

#### Parameters

$length
  `integer`
  $length Up to length number of bytes read.

#### Returns

`string|boolean`
Returns the data read from the stream or FALSE on failure or EOF

#### Overrides

`Guzzle\Http\AbstractEntityBodyDecorator::read`

### Methods inherited from Guzzle\Http\AbstractEntityBodyDecorator

`__call()`, `close()`, `compress()`, `detachStream()`, `feof()`, `ftell()`, `getContentEncoding()`, `getContentMd5()`, `getContentType()`, `getCustomData()`, `getMetaData()`, `getSize()`, `getStream()`, `getStreamType()`, `getUri()`, `getWrapper()`, `getWrapperData()`, `isLocal()`, `isReadable()`, `isRepeatable()`, `isSeekable()`, `isWritable()`, `readLine()`, `rewind()`, `setCustomData()`, `setRewindFunction()`, `setSize()`, `setStream()`, `uncompress()`, `write()`

### Magic methods summary

## Properties summary

`protected integer` | $limit | # Limit the number of bytes that can be read
`protected integer` | $offset | # Offset to start reading from

### Properties inherited from Guzzle\Http\AbstractEntityBodyDecorator

`$body`