ConFoo 2025

shmop_close

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

shmop_closeFecha um bloco de memória compartilhada

Aviso

Esta função tornou-se DEFASADA a partir do PHP 8.0.0. O uso desta função é fortemente desencorajado.

Descrição

#[\Deprecated]
shmop_close(Shmop $shmop): void

Nota:

Esta função não tem efeito. Antes do PHP 8.0.0, esta função era usada para fechar o recurso.

shmop_close() é usada para fechar um bloco de memória compartilhada.

Parâmetros

shmop

O recurso de bloco de memória compartilhada criado por shmop_open()

Valor Retornado

Nenhum valor é retornado.

Registro de Alterações

Versão Descrição
8.0.0 Esta função foi descontinuada, pois não tem mais efeito.
8.0.0 shmop agora espera uma instância de Shmop; anterioremente um resource era esperado.

Exemplos

Exemplo #1 Fechando um bloco de memória compartilhada

<?php
shmop_close
($shm_id);
?>

Esse exemplo irá fechar o bloco de memória compartilhada identificado por $shm_id.

Veja Também

  • shmop_open() - Cria ou abre um bloco de memória compartilhada

adicione uma nota

Notas Enviadas por Usuários (em inglês) 2 notes

up
3
slavapl at mailandnews dot com
23 years ago
shmop_close doesn't delete the memory segment, it just detaches from it.

If you have created the block and need to delete it you must call shmop_delete **BEFORE** calling shmop_close (for reasons outlined in shmop_delete help page notes).
up
1
shortboi
3 years ago
As explained on this page, PHP 8.0.0 expects a Shmop instance instead of a resource. According to bug #81098 this change means that the Shmop closes itself when the script completes so there is no need to close it with shmop_close.

Using function_exists('shmop_close') will return true but calling shmop_close will throw a deprecation error.

The documentation explains the change in 8.0.0 expects the expected argument changed without mentioning it'll just throw a deprecation error.
To Top