Á¦26Àå Zend_Memory

¸ñÂ÷

26.1. °³¿ä
26.1.1. µµÀÔ
26.1.2. µ¿ÀÛ ¿ø¸®
26.2. MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥
26.2.1. MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ ÀÇ ÀÛ¼º
26.2.2. Memory ObjectsÀÇ °ü¸®
26.2.3. Memory ObjectsÀÇ ¼³Á¤
26.3. Memory Objects
26.3.1. À̵¿ °¡´ÉÇÑ ¿ÀºêÁ§Æ®
26.3.2. ¶ô µÈ ¿ÀºêÁ§Æ®
26.3.3. ¸Þ¸ð¸® ÄÁÅ×À̳ÊÀÇ 'value' ÇÁ·ÓÆÛƼ
26.3.4. ¸Þ¸ð¸® ÄÁÅ×À̳ÊÀÇ ÀÎÅÍÆäÀ̽º

26.1. °³¿ä

26.1.1. µµÀÔ

Zend_Memory ÄÄÆÛ³ÍÆ®´Â, ÇÑÁ¤µÈ ¸Þ¸ð¸® ȯ°æ¿¡¼­ µ¥ÀÌÅ͸¦ °ü¸®Çϱâ À§ÇÑÀÇ °ÍÀÔ´Ï´Ù.

MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ ÀÌ ¿ä±¸¿¡ µû¶ó Memory Objects (¸Þ¸ð¸® ÄÁÅ×À̳Ê) (À»)¸¦ ÀÛ¼ºÇØ, Çʿ信 µû¶ó¼­ Åõ°úÀûÀ¸·Î ½º¿Ò/Àб⸦ ½Ç½ÃÇÕ´Ï´Ù.

¿¹¸¦ µé¾î, ¾î´À ¿ÀºêÁ§Æ®¸¦ ÀÛ¼º ȤÀº ÀоîµéÀÌ´Â °Í¿¡ ÀÇÇØ¼­ ¸Þ¸ð¸®ÀÇ »ç¿ë·®ÀÌ Á¦ÇÑÄ¡¸¦ ³Ñ¾î ¹ö¸®´Â °æ¿ì¿¡, °ü¸®Çϰí ÀÖ´Â ¿ÀºêÁ§Æ®ÀÇ ¸î°³Àΰ¡¸¦ ¸Þ¸ð¸®ÀÇ ¿ÜºÎÀÇ Ä³½¬¿¡ Ä«ÇÇÇÕ´Ï´Ù. ÀÌ¿Í °°ÀÌ Çϰí, °ü¸®Çϰí ÀÖ´Â ¿ÀºêÁ§Æ®ÀÇ ¸Þ¸ð¸® »ç¿ë·®ÀÌ Á¦ÇÑÄ¡¸¦ ³ÑÁö ¾Ê°Ô ÇÕ´Ï´Ù.

MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ ÀÇ º¸Á¸ ±â´ÉÀº, Zend_Cache ¿¬±¸ ÃÖÁ¾ ´Ü°è (À»)¸¦ »ç¿ëÇϰí ÀÖ½À´Ï´Ù.

·Ê 26.1. Zend_Memory ÄÄÆÛ³ÍÆ®ÀÇ »ç¿ë¹ý

Zend_Memory::factory() (Àº)´Â, ÁöÁ¤ÇÑ ¿¬±¸ ÃÖÁ¾ ´Ü°è ¿É¼ÇÀ¸·Î MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ ¿ÀºêÁ§Æ®ÀÇ ÀνºÅϽº¸¦ ÀÛ¼ºÇÕ´Ï´Ù.


<?php
require_once 'Zend/Memory.php';

$backendOptions = array(
    
'cacheDir' => './tmp/' // ½º¿Ò ÇÑ ¸Þ¸ð¸®ºê·ÏÅ©¸¦ ¹èÄ¡ÇÏ´Â µð·ºÅ丮
);

$memoryManager Zend_Memory::factory('File'$backendOptions);

$loadedFiles = array();

for (
$count 0$count 10000$count++) {
    
$f fopen($fileNames[$count], 'rb');
    
$data fread($ffilesize($fileNames[$count]));
    
$fclose($f);

    
$loadedFiles[] = $memoryManager->create($data);
}

echo 
$loadedFiles[$index1]->value;

$loadedFiles[$index2]->value $newValue;

$loadedFiles[$index3]->value[$charIndex] = '_';

26.1.2. µ¿ÀÛ ¿ø¸®

Zend_Memory ÄÄÆÛ³ÍÆ®´Â, ÀÌÇÏÀÇ °³³äÀ¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.

  • MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥

  • ¸Þ¸ð¸® ÄÁÅ×À̳Ê

  • ¶ô µÈ Memory Objects

  • À̵¿ °¡´ÉÇÑ Memory Objects

26.1.2.1. MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥r

MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ Àº, ¾îÇø®ÄÉÀ̼ÇÀ¸·ÎºÎÅÍÀÇ ¿ä±¸¿¡ µû¶ó (¶ô µÈ, ȤÀº À̵¿ °¡´ÉÇÑ) Memory Objects¸¦ ÀÛ¼ºÇØ, ±×°ÍÀ» ¸Þ¸ð¸® ÄÁÅ×À̳ʿÀºêÁ§Æ®¿¡ ·¦ÇÎ ÇÑ °ÍÀ» µ¹·ÁÁÝ´Ï´Ù.

26.1.2.2. ¸Þ¸ð¸® ÄÁÅ×À̳Ê

¸Þ¸ð¸® ÄÁÅ×À̳ʴÂ, ¹®ÀÚ¿­ÇüÀÇ ¼Ó¼º value (À»)¸¦ (°¡»óÀûÀ¸·Î, ȤÀº ½ÇÁ¦·Î) º¸°ü À¯ÁöÇÕ´Ï´Ù. ÀÌ ¼Ó¼º¿¡´Â, Memory ObjectsÀÇ ÀÛ¼º½Ã·Î ÁöÁ¤µÈ °ªÀÌ Æ÷ÇԵ˴ϴÙ.

ÀÌ ¼Ó¼º value (Àº)´Â, ¿ÀºêÁ§Æ®ÀÇ ÇÁ·ÓÆÛƼ·Î¼­ Ãë±ÞÇÒ ¼ö ÀÖ½À´Ï´Ù.


<?php
$memObject 
$memoryManager->create($data);

echo 
$memObject->value;

$memObject->value $newValue;

$memObject->value[$index] = '_';

echo 
ord($memObject->value[$index1]);

$memObject->value substr($memObject->value$start$length);

[ÁÖÀÇ] ÁÖÀÇ

5.2 º¸´Ù ÀüÀÇ ¹öÁ¯ÀÇ PHP (À»)¸¦ »ç¿ëÇϰí ÀÖ´Â °æ¿ì´Â, value ÇÁ·ÓÆÛƼ¿¡ Á÷Á¢ ¾×¼¼½º ÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó getRef() ¸Þ¼Òµå¸¦ »ç¿ëÇÕ´Ï´Ù.

26.1.2.3. ¶ô µÈ ¸Þ¸ð¸®

¶ô µÈ Memory Objects´Â, Ç×»ó ¸Þ¸ð¸®³»¿¡ º¸°ü À¯ÁöµË´Ï´Ù. ¶ô µÈ ¸Þ¸ð¸®¿¡ º¸Á¸µÈ µ¥ÀÌÅÍ´Â, °áÄÚ Ä³½¬¿¡ ½º¿Ò µÉ °ÍÀº ¾ø½À´Ï´Ù.

26.1.2.4. À̵¿ °¡´ÉÇÑ ¸Þ¸ð¸®

À̵¿ °¡´ÉÇÑ Memory Objects´Â, Çʿ信 µû¶ó¼­ Zend_Memory ÇÏÁö¸¸ ij½¬¿¡ ½º¿Ò Çϰųª ij½¬·ÎºÎÅÍ ÀÐ¾î µÇµ¹¸®°Å³ª ÇÕ´Ï´Ù.ÀÌ Ã³¸®´Â Åõ°úÀûÀ¸·Î ÇàÇØÁý´Ï´Ù.

MS-DOS¸Þ¸ð¸® °ü¸® ÇÁ·Î±×·¥ Àº, ÁöÁ¤ÇÑ ÃÖ¼ÒÄ¡º¸´Ù ÀÛÀº »çÀÌÁîÀÇ ¿ÀºêÁ§Æ®´Â ½º¿Ò ÇÏÁö ¾Ê½À´Ï´Ù. À̰ÍÀº, ÆÛÆ÷¸Õ½º¸¦ °í·ÁÇÑ ÆÇ´ÜÀÔ´Ï´Ù.ÀÚ¼¼ÇÑ °ÍÀº Ç×26.2.3.2. ¡¸MinSize¡¹ (À»)¸¦ ÂüÁ¶ÇØ ÁֽʽÿÀ.