php-driver

DataStax PHP Driver for Apache Cassandra

  • Owner: datastax/php-driver
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

DataStax PHP Driver for Apache Cassandra

Build Status: Linux
Build Status: Windows

A modern, feature-rich and highly tunable PHP client library for
Apache Cassandra 2.1+ using exclusively Cassandra's binary protocol and
Cassandra Query Language v3. Use the DSE PHP driver for better compatibility
and support for DataStax Enterprise
.

This is a wrapper around the DataStax C/C++ Driver for Apache Cassandra.

Note: DataStax products do not support big-endian systems.

Getting the Driver

Binary versions of the driver, available for multiple operating systems and
multiple versions of PHP, can be obtained from DataStax download server. The
source code is made available via GitHub. If you're using DataStax Enterprise
use the DSE PHP driver instead
.

Note: The driver extension is a wrapper around the
DataStax C/C++ Driver for Apache Cassandra and is a requirement for proper
installation of the PHP extension binaries. Ensure these dependencies are met before proceeding.

What's new in v1.2.0/v1.3.0

Compatibility

This driver works exclusively with the Cassandra Query Language v3 (CQL3) and
Cassandra's native protocol. The current version works with:

  • Apache Cassandra versions 2.1, 2.2 and 3.0+
  • PHP 5.6, PHP 7.0, and PHP 7.1
    • 32-bit (x86) and 64-bit (x64)
    • Thread safe (TS) and non-thread safe (NTS)
  • Compilers: GCC 4.1.2+, Clang 3.4+, and MSVC 2010/2012/2013/2015

If using DataStax Enterprise the DSE PHP driver provides more features and
better compatibility.

Documentation

Getting Help

Feedback Requested

Help us focus our efforts! Provide your input on the PHP Driver Platform
and Runtime Survey (we kept it short).

Quick Start

<?php
$cluster   = Cassandra::cluster()                 // connects to localhost by default
                 ->build();
$keyspace  = 'system';
$session   = $cluster->connect($keyspace);        // create session, optionally scoped to a keyspace
$statement = new Cassandra\SimpleStatement(       // also supports prepared and batch statements
    'SELECT keyspace_name, columnfamily_name FROM schema_columnfamilies'
);
$future    = $session->executeAsync($statement);  // fully asynchronous and easy parallel execution
$result    = $future->get();                      // wait for the result, with an optional timeout

foreach ($result as $row) {                       // results and rows implement Iterator, Countable and ArrayAccess
    printf("The keyspace %s has a table called %s\n", $row['keyspace_name'], $row['columnfamily_name']);
}

Installation

pecl install cassandra

Read detailed instructions on building and installing the
extension

Contributing

Read our contribution policy for a detailed description
of the process.

Code examples

The DataStax PHP Driver uses the amazing Behat Framework for both end-to-end,
or acceptance testing and documentation. All of the features supported by the
driver have appropriate acceptance tests with easy-to-copy code examples in
the features/ directory
.

Running tests

For your convenience a Vagrantfile with configuration ready for testing is
available. To execute tests, run the following:

git clone https://github.com/datastax/php-driver.git
cd php-driver
git submodule update --init
vagrant up
vagrant ssh

Once you've logged in to the vagrant VM, run:

cd /usr/local/src/php-driver
./bin/behat
./bin/phpunit

© DataStax, Inc.

Licensed under the Apache License, Version 2.0 (the “License”); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed
under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.

Main metrics

Overview
Name With Ownerdatastax/php-driver
Primary LanguageC
Program languageC (Language Count: 9)
Platform
License:Other
所有者活动
Created At2015-04-02 16:11:47
Pushed At2023-09-20 19:37:04
Last Commit At2023-09-20 14:37:03
Release Count12
Last Release Namev1.3.2 (Posted on 2017-08-14 09:34:31)
First Release Namev1.0.0-alpha (Posted on )
用户参与
Stargazers Count438
Watchers Count64
Fork Count155
Commits Count0.9k
Has Issues Enabled
Issues Count0
Issue Open Count0
Pull Requests Count110
Pull Requests Open Count5
Pull Requests Close Count35
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private