Нужен полный пример для DynamoDB с php

Я хочу написать сервис в php, где –

1) DynamoDB будет иметь таблицу t с двумя столбцами и val

2) Я проверю, существует ли какой-либо ключ в таблице t или нет.

3) Если существуют прочитанные данные .. если не существует, добавьте новый ключ-значение в таблицу t

Я проверял некоторые ссылки http://docs.aws.amazon.com/AWSSDKforPHP/latest/index.html#m=AmazonDynamoDB/put_item http://docs.aws.amazon.com/aws-sdk-php/guide/ последний / быстрый start.html

Какой из них следует?

Также может кто-то дать мне быстрый пример и точный синтаксис.

Заранее спасибо.

Полное пошаговое руководство находится ЗДЕСЬ . Он дает вам пошаговую схему процесса установки учетных данных и поставляется с простым в использовании добавлением к PHP SDK для AWS

AWS Setup – AWS не устанавливает настройки учетных данных, которые вы устанавливаете поэтапно, поэтому я буду.

  • 1. Перейдите в AWS и получите свой PUBLIC_KEY и PRIVATE_KEY

    • У AWS есть учебники для этого ЗДЕСЬ и ЗДЕСЬ
  • 2. Открыть терминал

  • 3. Если вы еще не создали свои учетные данные, на новой странице терминала введите:

    nano ~/.aws/credentials 
    • Откроется страница функции nano . Вы увидите GNU nano 2.0.6... вверху.
  • 4. Внутри страницы nano введите:

     [default] aws_access_key_id = public_key_ABCDEFGHIJKLMNOPQRSTUVWXYZ aws_secret_access_key = private_key_s0m3_CR42Y_l3tt3rS_i5y0ur53cr3tK3y 
  • 5. После того, как вы набрали его, нажмите CONTROL + X (Yes … Control, а не Command).

  • 6. Нажмите Y, затем ENTER
  • 7. Получите [AWS_SDK_PHP] [4]
  • 8. Перейдите на свой эластичный бобовый стебель
  • 9. Когда вы закончите создание своего приложения, и вы увидите экран « Обзор» с зеленой проверкой. Посмотрите на сторону и нажмите « Конфигурация» .
  • 10. В разделе « Конфигурация программного обеспечения» -> « Корень документа» введите: /
  • 11. В поле Имя свойства -> AWS_ACCESS_KEY_ID введите: [your_access_key]
  • 12. В AWS_ACCESS_KEY_ID находится AWS_SECRET_KEY , введите: [your_secret_key]
  • 13. Когда ваш проект PHP готов. Поместите все ваши файлы в одну папку. Назовите папку [whatever] , затем сжимайте файлы внутри [независимо] . Не сжимайте всю папку. Сжимайте только файлы в папке. Если один из этих файлов включает ваш index.php или index.html , ваш проект будет отображаться по URL-адресу EBS по умолчанию.
  • 14. Ваш проект следует называть Archive.zip (Mac). Идите в EBS, загрузите почтовый индекс и туда! Все закончилось с установкой AWS!

Настройка AWS

  • 1. Поместите AWS_SDK_PHP в пустую папку
  • 2. В верхней части файла, используя SDK ( index.php или что-то еще), введите:

     require 'aws/aws-autoloader.php'; date_default_timezone_set('America/New_York'); use Aws\DynamoDb\DynamoDbClient; $client = new DynamoDbClient([ 'profile' => 'default', 'region' => 'us-east-1', 'version' => 'latest' ]); 

  • Типы данных
    • S = строка
    • N = номер
    • B = двоичный

  • Основные методы

    • Описать таблицу

       $result = $client->describeTable(array( 'TableName' => '[Table_Name]' )); echo $result; 
    • Положить предмет

       $response = $client->putItem(array( 'TableName' => '[Table_Name]', 'Item' => array( '[Hash_Name]' => array('S' => '[Hash_Value]'), '[Range_Name]' => array('S' => '[Range_Value]') ) )); //Echoing the response is only good to check if it was successful. Status: 200 = Success echo $response; 
    • Получить элемент

       $response = $client->getItem(array( 'TableName' => '[Table_Name]', 'Key' => array( '[Hash_Name]' => array('S' => '[Hash_Value]'), '[Range_Name]' => array('S' => '[Range_Value]') ) )); echo $response; 
    • Удалить пункт

       $response = $client->deleteItem(array( 'TableName' => '[Table_Name]', 'Key' => array( '[Hash_Name]' => array('S' => '[Hash_Value]'), '[Range_Name]' => array('S' => '[Range_Value]') ) )); //Echoing the response is only good to check if it was successful. Status: 200 = Success echo $response; 
    • Элемент запроса

       $response = $client->query(array( 'TableName' => '[Table_Name]', 'KeyConditionExpression' => '[Hash_Name] = :v_hash and [Range_Name] = :v_range', 'ExpressionAttributeValues' => array ( ':v_hash' => array('S' => '[Hash_Value]'), ':v_range' => array('S' => '[Range_Value]') ) )); echo $response; 

Надеюсь это поможет.

Вы можете следовать примеру: http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/GSILowLevelPHP.Example.html

или вы также можете следовать рекомендациям:

http://docs.aws.amazon.com/aws-sdk-php/latest/class-Aws.DynamoDb.DynamoDbClient.html

Это меня много обошлось

Я нашел это основное пошаговое руководство довольно полезным:

http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/SampleData.html