文字

Threaded::merge

(PECL pthreads >= 2.0.0)

Threaded::mergeManipulation

说明

public boolean Threaded::merge ( mixed $from [, mixed $overwrite ] )

将数据合并到当前对象

参数

from

要合并的数据

overwrite

如果现有对象已经存在同键的数据,是否覆盖。默认为 true

返回值

布尔值,表示操作是否成功

范例

Example #1 合并数据到对象的属性表

<?php
$array 
= [];

while (
count ( $array ) <  10 )
    
$array [] =  count ( $array );

$stdClass  = new  stdClass ();
$stdClass -> foo  "foo" ;
$stdClass -> bar  "bar" ;
$stdClass -> baz  "baz" ;

$safe  = new  Threaded ();
$safe -> merge ( $array );
$safe -> merge ( $stdClass );

var_dump ( $safe );
?>

以上例程会输出:

object(Threaded)#2 (13) {
  ["0"]=>
  int(0)
  ["1"]=>
  int(1)
  ["2"]=>
  int(2)
  ["3"]=>
  int(3)
  ["4"]=>
  int(4)
  ["5"]=>
  int(5)
  ["6"]=>
  int(6)
  ["7"]=>
  int(7)
  ["8"]=>
  int(8)
  ["9"]=>
  int(9)
  ["foo"]=>
  string(3) "foo"
  ["bar"]=>
  string(3) "bar"
  ["baz"]=>
  string(3) "baz"
}

用户评论:

[#1] cottton [2015-08-15 19:41:51]

The example output is different on my side:
<?php

?>

for 
windows using
PHP_VERSION 5.6.11
php_pthreads-2.0.10-5.6-ts-vc11-x86.zip @ http://windows.php.net/downloads/pecl/releases/pthreads/2.0.10/

and 

linux using
PHP_VERSION 5.6.10-1~dotdeb+zts+7.3

So $stdClass wont be merged.

上一篇: 下一篇: