This PHP APC guide is divided on four different section:
1. PHP APC Configuration
2. Enable PHP APC Statistics
3. Howto Use PHP APC User Cache
4. PHP APC Performance Testing
3. Howto Use PHP APC User Cache Examples
3.1 PHP APC User Cache Example with Numeric Values
Here is an example howto use apc_add, apc_cas, apc_fetch, apc_dec and apc_inc:
<?php
// Add num variable to data store
apc_add('num', 1);
// Print initial value
echo "Initial value: ", apc_fetch('num'), "
";
// Update old value with a new value
apc_cas('num', 1, 10);
// Print just updated value
echo "Updated value: ", apc_fetch('num'), "
";
// Decrease a stored number
echo "Decrease 1: ", apc_dec('num'), "
";
echo "Decrease 3: ", apc_dec('num', 3), "
";
// Increase a stored number
echo "Increase 2: ", apc_inc('num', 2), "
";
echo "Increase 1: ", apc_inc('num'), "
";
?>
Output:
Initial value: 1
Updated value: 10
Decrease 1: 9
Decrease 3: 6
Increase 2: 8
Increase 1: 9
3.2 PHP APC User Cache Example with String
This example shows howto use apc_fetch, apc_exists, apc_store, apc_clear_cache:
<?php
// Check if str found from cache
if (apc_exists('str')) {
// Print str from cache
echo "str from cache: ", apc_fetch('str'), "
";
// Clear cache
apc_clear_cache('user');
// Try to fetch str again
echo "str from cache, after user cache is cleared: ", "
";
var_dump(apc_fetch('str'));
}
else {
// Save str to cache and set ttl 120 seconds
echo 'str not found from cache...saving', "
";
$str = "This is just test";
apc_store('str', $str, 120);
}
?>
First run output:
str not found from cache...saving
Second run output:
str from cache: This is just test
3.3 PHP APC User Cache Example with Array
<?php
// Check if arr found from cache
if ($arr = apc_fetch('arr')) {
echo "arr from cache: ", "
";
print_r($arr);
}
else {
echo 'arr not found from cache...saving', "
";
$arr = array('Test 1', 'Test 2', 'Test 3');
apc_add('arr', $arr, 120);
}
?>
First run output:
arr not found from cache...saving
Second run output:
arr from cache:
Array ( [0] => Test 1 [1] => Test 2 [2] => Test 3 )
3.3 PHP APC User Cache Example with Object
<?php
// Simple Person class
class Person {
private $name;
private $age;
public function setName($name) {
$this->name = $name;
}
public function setAge($age) {
$this->age = $age;
}
public function getName() {
return $this->name;
}
public function getAge() {
return $this->age;
}
}
// Check if Person object found from cache
if ($obj = apc_fetch('person')) {
echo "Person data from cache: ", "
";
echo "Name: ", $obj->getName(), "
";
echo "Age: ", $obj->getAge(), "
";
}
else {
echo 'Person data not found from cache...saving', "
";
$obj = new Person;
$obj->setName('Test Person');
$obj->setAge(35);
apc_add('person', $obj, 3600);
}
?>
First run output:
Person data not found from cache...saving
Second run output:
Person data from cache:
Name: Test Person
Age: 35
This PHP APC guide is divided on four different section:
1. PHP APC Configuration
2. Enable PHP APC Statistics
3. Howto Use PHP APC User Cache
4. PHP APC Performance Testing
40 comments on “PHP: APC Configuration and Usage Tips and Tricks Part 3”