Error 500: Attempted to load class “Twig_Function” from the global namespace. Did you forget a “use” statement?

During the Pimcore update from older versions to the most recent 10.5 at this time I’ve got the following errpr:

Attempted to load class "Twig_Function" from the global namespace. Did you forget a "use" statement?

To fix it add the following use statement to your class:

use Twig\TwigFunction;

And replace all Twig_Function to TwigFunction in your php class file code.

Git: search commits by author

To search commits by the author you can use the following command:

# git log --author="Taras Shkodenko"

where Taras Shkodenko example author name.

To get the list of all authors in a current Git repository use the useful command below:

# git shortlog -sne --all

Git: how to stash / unstash not commited changes

Git has a useful feature. You can stash not committed changes and then re-apply them. It helps you to restore the working directory and the index, to a clean working directory as it was before your not commited changes.

To stash your changes run a command below:

# git stash

To apply (unstash) your changes run a command below:

# git stash apply

To view list of stashes run a following command:

# git stash list

Read more about git stash on a documentation page.

Apache 2.4 virtual host config for a WordPress CMS

Example of a virtual host for web server Apache version 2.4 config to run a development copy of WordPress CMS:

<VirtualHost *:81>
    ServerName wpdev.test
    ServerAlias *.wpdev.test
    # Indexes + Directory Root.
    DirectoryIndex index.php index.html
    DocumentRoot "/Users/taras/wpdev/public_html"
    ErrorLog "/usr/local/var/log/httpd/wpdev.test/error.log"
    CustomLog "/usr/local/var/log/httpd/wpdev.test/access.log" common
    <FilesMatch \.php$>
        SetHandler "proxy:fcgi://"

    Options FollowSymLinks

PHP ?: ternary operator the Elvis operator

You can use ?: ternary operator in PHP then you need not empty value. Set value to a $action variable from $_POST[‘action’] parameter if it is not empty or use string default instead. It is shown in the example code below:

// Example usage for: Ternary Operator
$action = (empty($_POST['action'])) ? 'default' : $_POST['action'];

For more information see PHP documentation page for Ternary Operator.

In PHP 5.3, a shorter syntax for the ternary operator was introduced, which allows to leave out the middle part of the ternary operator for a quick shorthand evaluation. It is also called the Elvis operator sometimes because: