Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth
Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

42,690 questions

55,449 answers

573 users

How to call a given function only once in PHP

1 Answer

0 votes
function call_once($func) {
    static $called = []; // Use an array to track calls for different functions
    $funcName = is_string($func) ? $func : spl_object_hash($func); // Get unique identifier for the function

    if (!isset($called[$funcName])) {
        $called[$funcName] = true;
        return $func();
    } else {
        return null;
    }
}

function example() {
    return "example() function"; 
}

$result1 = call_once('example'); // Pass the function name as a string
$result2 = call_once('example'); // This will not execute example() again

echo "Result 1: " . ($result1 ?? 'null') . "\n"; // Output the return value
echo "Result 2: " . ($result2 ?? 'null') . "\n";



/*
run:

Result 1: example() function
Result 2: null

*/

 



answered Jan 6, 2025 by avibootz
...