PHP.mk документација

SplObjectStorage::offsetGet

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

splobjectstorage.offsetget.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека splobjectstorage.offsetget.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
SplObjectStorage::offsetGet

Референца за `splobjectstorage.offsetget.php` со подобрена типографија и навигација.

splobjectstorage.offsetget.php

SplObjectStorage::offsetGet

(PHP 5 >= 5.3.0, PHP 7, PHP 8)

SplObjectStorage::offsetGetReturns the data associated with an object

= NULL

public SplObjectStorage::offsetGet(object $object): mixed

Returns the data associated with an object in the storage.

Параметри

object

На object за барање.

Вратени вредности

The data previously associated with the object in the storage.

Errors/Exceptions

). Ако повикот не успее, ќе врати UnexpectedValueException when object could not be found.

Примери

Пример #1 SplObjectStorage::offsetGet() example

<?php
$s
= new SplObjectStorage;

$o1 = new stdClass;
$o2 = new stdClass;

$s[$o1] = "hello";
$s->attach($o2);


var_dump($s->offsetGet($o1)); // Similar to $s[$o1]
var_dump($s->offsetGet($o2)); // Similar to $s[$o2]
?>

Горниот пример ќе прикаже нешто слично на:

string(5) "hello"
NULL

Види Исто така

Белешки од корисници 2 забелешки

acgrid
пред 9 години
The performance of SplObjectStorage in PHP7.0.7 has boosted a lot.

SplObjectStorage
double(1.3110690116882)
[object_hash => value]
double(2.4147419929504)
kontrollfreak+php at gmail dot com
пред 10 години
SplObjectStorage::offsetGet() can become EXTREMELY slow depending on the associated data (PHP 5.6).

<?php

// SplObjectStorage
$object = new stdClass;
$test = new SplObjectStorage;
$test->attach($object, str_repeat("\0", 1024*1024));
$start = microtime(true);
for ($i = 0; $i < 1000000; $i++) {
    $test->offsetGet($object);
}
var_dump(microtime(true) - $start); // 76 seconds!

// Array + spl_object_hash()
$object = new stdClass;
$test = [];
$test[spl_object_hash($object)] =  str_repeat("\0", 1024*1024);
$start = microtime(true);
for ($i = 0; $i < 1000000; $i++) {
    $temp = $test[spl_object_hash($object)];
}
var_dump(microtime(true) - $start); // 0.3 seconds
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.