Redis - Connect with PHP

Connect to your Public Cloud Databases for Redis using the PHP programming language

Last updated 24th March 2022

Objective

Public Cloud Databases allow you to focus on building and deploying cloud applications while OVHcloud takes care of the database infrastructure and maintenance in operational conditions.

This guide explains how to connect to a Redis database instance with one of the world's most famous programming language: PHP.

You can find an example on the Github examples repository.

Requirements

Concept

A Redis instance can be managed through multiple ways. One of the easiest, yet powerful, is to use a Command Line Interface (CLI), as shown in our guide : Connect to Redis with CLI.

Another way is to interact directly using programming languages, such as PHP. PHP is used in almost 80% of the websites in the world, such as Facebook, Wikipedia or WordPress. Redis has multiple PHP clients, allowing us to connect and manage a Redis instance from code. Please follow the official Redis documentation for PHP clients to get the latest information for all Redis clients.

We will need to set up our PHP environment with phpredis client, then configure our Public Cloud Databases for Redis instances to accept incoming connections, and finally code in PHP to perform a few example actions.

Instructions

Set up your PHP environment

To interact with your Redis instance with PHP, your development environment needs to be configured with:

  • A compatible version of PHP;
  • PHP extension that support Redis 6 and TLS, as recommended by Redis : phpredis or Predis PHP Libraries.

For both phpredis and Predis it is recommended to check their respective sites on how to do the install:

We are now ready to learn how to connect to our Redis instance. We will use phpredis as the PHP client.

Connect with PHP

In your PHP environment, let's try a connection. To be sure that we are indeed connected, set a data pair and then check we can get the value of it.

<?php
   // PHP version 7.4 used here
    echo "\nConnection to server ongoing...";
    $redis = new Redis() or die("Cannot load Redis module in PHP.");

    //Connection to the Redis DB
    $redis->connect('tls://redis-9f6095f3-of5ff6e31.database.cloud.ovh.net', 20185);

    //Setup the user
    $redis->auth(['redisUser', '3FAKExSW6Rez9Xw0admB']);

    // Ping the redis instance
    echo "\nServer is running: ".$redis->ping("OK");

    // Set the key pair
    echo "\nSet key pair (foo,cowabunga).";
    $redis->set('foo', 'cowabunga');

    //Get the value of the key foo
    $response = $redis->get('foo');
    echo "\nGet the value for key foo :";
    echo $response;

    if ($response == "cowabunga") {
        echo "\nPHP test with Redis OK.•\n";
    } else {
        echo "\nPHP Test FAILED\n";
    }
?>

Congratulations! Everything is working properly.

Go further

Redis official tutorial : simple Twitter clone using PHP

Redis capabilities

Configuring vRack for Public Cloud

Visit our dedicated Discord channel: https://discord.gg/PwPqWUpN8G. Ask questions, provide feedback and interact directly with the team that builds our databases services.

Join our community of users on https://community.ovh.com/en/.


Esta documentação foi-lhe útil?

Não hesite em propor-nos sugestões de melhoria para fazer evoluir este manual.

Imagens, conteúdo, estrutura... Não hesite em dizer-nos porquê para evoluirmos em conjunto!

Os seus pedidos de assistência não serão tratados através deste formulário. Para isso, utilize o formulário "Criar um ticket" .

Obrigado. A sua mensagem foi recebida com sucesso.


Estes manuais também podem ser úteis...

OVHcloud Community

Aceda ao seu espaço comunitário. Coloque as suas questões, procure informações e interaja com outros membros do OVHcloud Community.

Discuss with the OVHcloud community

Em conformidade com a alteração à Diretiva 2006/112/CE, os preços com IVA podem variar de acordo com o país de residência do cliente
(por defeito, os preços com IVA apresentados incluem o IVA português em vigor).