Skip to content

A simple PHP application that connects to a YugabyteDB database cluster and performs basic CRUD operations.

License

Notifications You must be signed in to change notification settings

YugabyteDB-Samples/yugabyte-simple-php-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Simple PHP Application for YugabyteDB

This application connects to your YugabyteDB instance via the php-pgsql driver for PostgreSQL and performs basic SQL operations. The instructions below are provided for YugabyteDB Aeon deployments. If you use a different type of deployment, then update the sample-app.php file with proper connection parameters.

Prerequisite

  • PHP runtime - the sample project was created with PHP 8.1 but should work with earlier and later versions.
  • Command line tool or your favorite IDE, such as Visual Studio Code.

Start YugabyteDB Aeon Cluster

Clone Application Repository

Clone the repository and change dirs into it:

git clone https://github.com/YugabyteDB-Samples/yugabyte-simple-php-app.git && cd yugabyte-simple-php-app

Provide YugabyteDB Aeon Connection Parameters

Set the following connection parameters in the sample-app.php file:

  • HOST - the hostname of your YugabyteDB Managed instance.
  • USER - the username for your database.
  • PASSWORD - the password for your database.
  • SSL_MODE - an SSL mode. Make sure it's set to verify-full for YugabyteDB Aeon.
  • SSL_ROOT_CERT - a full path to your CA root cert (for example, /Users/dmagda/certificates/root.crt).

Note, you can easily find all the settings on the YugabyteDB Aeon dashboard:

image

Run the Application

  1. Install the php-pgsql driver:

    • Homebrew users of version PHP 7.2+: the driver is installed automatically with the brew install php command.
    • Ubuntu users can install with the sudo apt-get install php-pgsql command.
    • CentOS users can install with the sudo yum install php-pgsql command.
    • Others need to follow the php-pgsql installation guide.
  2. Run the application:

    php sample-app.php

Upon successful execution, you will see output similar to the following:

>>>> Connecting to YugabyteDB!
>>>> Successfully connected to YugabyteDB!
>>>> Successfully created table DemoAccount.
>>>> Selecting accounts:
name=Jessica, age=28, country=USA, balance=10000
name=John, age=28, country=Canada, balance=9000
>>>> Transferred 800 between accounts
>>>> Selecting accounts:
name=Jessica, age=28, country=USA, balance=9200
name=John, age=28, country=Canada, balance=9800

Explore Application Logic

Congrats! You've successfully executed a simple PHP app that works with YugabyteDB Aeon.

Now, explore the source code of sample-app.php:

  1. connect function - establishes a connection with your cloud instance via the php-pgsql driver.
  2. create_database function - creates a table and populates it with sample data.
  3. select_accounts function - queries the data with SQL SELECT statements.
  4. transfer_money_between_accounts function - updates records consistently with distributed transactions.

Questions or Issues?

Having issues running this application or want to learn more from Yugabyte experts?

Join our Slack channel, or raise a question on StackOverflow and tag the question with yugabytedb!

About

A simple PHP application that connects to a YugabyteDB database cluster and performs basic CRUD operations.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages