Как создать общий объект в памяти, используя PHP? - PullRequest
1 голос
/ 01 февраля 2011


У меня есть блок на моем веб-сайте, который показывает последние 20 элементов в таблице базы данных.
Теперь мне нужно создать массив или объект, который будет находиться в памяти, а затем получить доступ к нему для всех пользователей, которые просматриваютмой веб-сайт?Могу ли я сделать это с помощью PHP?

Спасибо за вашу помощь

Ответы [ 3 ]

2 голосов
/ 01 февраля 2011

Посмотрите на параметры, такие как APC или memcache, или WinCache, если вы находитесь на сервере Windows.Все они предоставляют опции для кэширования данных / объектов.

Если это необходимо для отображения последних элементов в базе данных, вам нужно будет обновлять их каждый раз, когда что-то добавляется в эту базу данных, иначе это не будетв соответствии с базой данных

1 голос
/ 05 февраля 2011


Спасибо за ваш вклад.
Я нашел способ сделать это.
Альтернативный PHP Cache (APC) - это бесплатный и открытый кэш кода операции для PHP.Его цель - предоставить среду для кэширования.
Попробуйте этот код и обновите страницу или откройте ее с помощью различных браузеров

<?php 
if (apc_exists('test'))
     echo apc_fetch('test');
else{
   echo "Just Created ";
   apc_store("test",time(),6666);
   echo  apc_fetch('test');
}
?>
0 голосов
/ 01 февраля 2011

PHP не имеет состояния, поэтому невозможно легко разделить переменную между различными сеансами. Вы можете сделать это одним трюком. Создать массив всех этих значений, Теперь сериализуем массив $sharedObj = serialize ($originalArray) ; вы можете получить переменную Serialize вашей $originalArray в $sharedObject Запишите $sharedObject в текстовый файл, и вы сможете прочитать текстовый файл и отменить сериализацию этих данных (которые вы получаете из текстового файла), и вы можете получить тот же массив.

Пожалуйста, дайте мне знать, если у вас все еще есть проблема.

...