cubrid_lob2_seek

Move the cursor of a lob object

&reftitle.description; `bool` `cubrid_lob2_seek` `resource` `lob_identifier` `int` `offset` `int` `origin` CUBRID_CURSOR_CURRENT

The `cubrid_lob2_seek` function is used to move the cursor position of a lob object by the value set in the `offset` argument, to the direction set in the `origin` argument.

To set the `origin` argument, you can use `CUBRID_CURSOR_FIRST` to set the cursor position moving forward `offset` units from the first beginning. In this case, `offset` must be a positive value.

If you use `CUBRID_CURSOR_CURRENT` for `origin`, you can move forward or backward. and `offset` can be positive or negative.

If you use `CUBRID_CURSOR_LAST` for `origin`, you can move backward `offset` units from the end of LOB object and `offset` only can be positive.

&reftitle.parameters;

`lob_identifier`

- Lob identifier as a result of `cubrid_lob2_new` or get from the result set.

`offset`

- Number of units you want to move the cursor.

`origin`

- This parameter can be the following values:

  CUBRID_CURSOR_FIRST: move forward from the first beginning.

  CUBRID_CURSOR_CURRENT: move forward or backward from the current position.

  CUBRID_CURSOR_LAST: move backward at the end of LOB object.

&reftitle.returnvalues;

&return.success;

&reftitle.examples;

### `cubrid_lob2_seek` example

    <?php
    // test_lob (id INT, contents CLOB)
    $conn = cubrid_connect("localhost", 33000, "demodb", "dba", "");

    cubrid_execute($conn,"DROP TABLE if exists test_lob");
    cubrid_execute($conn,"CREATE TABLE test_lob (id INT, contents CLOB)");
    $req = cubrid_prepare($conn, "INSERT INTO test_lob VALUES(2, ?)");

    $lob = cubrid_lob2_new($conn, 'CLOB');
    $len = cubrid_lob2_write($lob, "Hello world");

    cubrid_lob2_seek($lob, 0, CUBRID_CURSOR_LAST);
    cubrid_lob2_write($lob, "beautiful");

    cubrid_lob2_seek($lob, 15, CUBRID_CURSOR_FIRST);
    $data = cubrid_lob2_read($lob, 5);

    echo $data."\n";

    cubrid_lob2_bind($req, 1, $lob);
    cubrid_execute($req);

    cubrid_disconnect($conn);
    ?>

&reftitle.seealso;

- `cubrid_lob2_read`
- `cubrid_lob2_write`
- `cubrid_lob2_seek64`
- `cubrid_lob2_tell`
- `cubrid_lob2_tell64`
- `cubrid_lob2_size`
- `cubrid_lob2_size64`