1. Go to this page and download the library: Download bancer/native-sql-mapper library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
bancer / native-sql-mapper example snippets
use Bancer\NativeQueryMapper\ORM\NativeSQLMapperTrait;
use NativeSQLMapperTrait;
$ArticlesTable = $this->fetchTable(ArticlesTable::class);
$stmt = $ArticlesTable->prepareNativeStatement("
SELECT
id AS Articles__id,
title AS Articles__title
FROM articles
WHERE title = :title
");
$stmt->bindValue('title', 'My Article Title');
/** @var \App\Model\Entity\Article[] $entities */
$entities = $ArticlesTable->mapNativeStatement($stmt)->all();
$stmt = $ArticlesTable->prepareNativeStatement("
SELECT
a.id AS Articles__id,
title AS Articles__title,
c.id AS Comments__id,
article_id AS Comments__article_id,
content AS Comments__content
FROM articles AS a
LEFT JOIN comments AS c
ON a.id=c.article_id
");
$entities = $ArticlesTable->mapNativeStatement($stmt)->all();
$ArticlesTable = $this->fetchTable(ArticlesTable::class);
$stmt = $ArticlesTable->prepareNativeStatement("
SELECT
Articles.id AS Articles__id,
Articles.title AS Articles__title,
Tags.id AS Tags__id,
Tags.name AS Tags__name
FROM articles AS Articles
LEFT JOIN articles_tags AS ArticlesTags
ON Articles.id=ArticlesTags.article_id
LEFT JOIN tags AS Tags
ON Tags.id=ArticlesTags.tag_id
");
$entities = $ArticlesTable->mapNativeStatement($stmt)->all();
use Bancer\NativeQueryMapper\Database\InPlaceholders;
$statuses = new InPlaceholders('status', [1, 5, 9]);
$sql = <<<SQL
SELECT email as Users__email
FROM users
WHERE status_id IN ($statuses)
SQL;
$stmt = $this->prepareNativeStatement($sql);
$statuses->bindValuesToStatement($stmt);
$entities = $this->mapNativeStatement($stmt)->all();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.