2017 © Pedro PelΓ‘ez
 

library dbo

Simple ORM for PHP 5.3

image

stdtech/dbo

Simple ORM for PHP 5.3

  • Wednesday, May 14, 2014
  • by Alexey Ruzin
  • Repository
  • 1 Watchers
  • 1 Stars
  • 7 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 2 Versions
  • 0 % Grown

The README.md

dbo

Simple ORM for PHP 5.3, (*1)

Exaple of usage:, (*2)

Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ структуру Ρ‚Π°Π±Π»ΠΈΡ†:, (*3)

$T["pack"] = array(
    "table" => "pack",
    "key" => "id",
    "fields" => array(
        "id" => "int",
        "name" => "char",
        "date_created" => "date",
        "desired_size" => "int",
        "pages_min" => "int",
        "pages_max" => "int",
        "theme_id" => "int",
        "is_full" => "int"
    )
);

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ ΠΊΠΎΠ½Π½Π΅ΠΊΡ‚ ΠΊ Π‘Π” ΠΈ "скармливаСм Π‘Π”", (*4)

$db = new DBObject($config);
$db->init_tables($T);

Π’Π°ΠΊ выглядит ΠΎΠ΄Π½Π° строка "вынутая" ΠΈΠ· Π±Π°Π·Ρ‹ - ассоциативный массив, (*5)

$row = array(
    "id" => 1,
    "name" => "Alex",
    "date_created" => "2014-03-03 11:12:33",
    "desired_size" => 15,
    ...
);

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ "pack" строчки ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌΡƒ ΠΊΠ»ΡŽΡ‡Ρƒ (ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° "id"), (*6)

$rows = $db->get('pack', 3); 

ВСрнСтся:, (*7)

array(
    0 => array(
        "id" => 3,
        "name" => "Mike",
        "date_created" => "2014-03-03 11:12:33",
        "desired_size" => 15,
        ...
    )
)

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ "pack" строчки ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌΡƒ Π³Π΄Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° "name" == "Alex", (*8)

$filter = array(
    "name" => "Alex"
);
$db->get('pack', $filter) 

ВСрнСтся:, (*9)

array(
    0 => array(
        "id" => 1,
        "name" => "Alex",
        "date_created" => "2014-03-03 11:12:33",
        "desired_size" => 15,
        ...
    ),
    ...
)

// ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ "pack" строчки ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌΡƒ Π³Π΄Π΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° "name" > "Alex", (*10)

$filter = array(
    "name" => ">Alex"  // символ '>' Π² Π½Π°Ρ‡Π°Π»Π΅ строки, Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ <, <=, >, >=, =, != (ΠΏΠΎ-ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ =)
);
$db->get('pack', $filter) 

ВСрнСтся:, (*11)

array(
    0 => array(
        "id" => 1,
        "name" => "Alex",
        "date_created" => "2014-03-03 11:12:33",
        "desired_size" => 15,
        ...
    ),
    ...
)

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ pack, Π³Π΄Π΅ id=3 ΠΈ установит ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² значСния ΠΈΠ· $row (Ссли ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² $row ΠΏΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Ρ‹, Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π±ΡƒΠ΄ΡƒΡ‚ установлСны Π² NULL), (*12)

$db->set('pack', $row, 3); 

ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ pack, Π³Π΄Π΅ id=3 ΠΈ установит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² значСния ΠΈΠ· $row (ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ Π² $row Π±ΡƒΠ΄ΡƒΡ‚ оставлСны Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ), (*13)

$db->set('pack', $row, 3, false); 

ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ pack, Π³Π΄Π΅ записи ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с условиями ΠΈΠ· $filter, (*14)

$db->set('pack', $row, $filter); 

Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ Π½ΠΎΠ²ΡƒΡŽ запись, (*15)

$db->set('pack', $row); 

Устройство Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ², (*16)

$filter = array(
    "name" => ">Alex",
    "col_name_1" => "scalar"
    "col_name_2" => array("scalar_1", "scalar_2")
);

всС ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ ΠΏΠΎ AND, Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠΈ ΠΏΠΎ OR, Ρ‚.Π΅. Π² Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π±ΡƒΠ΄Π΅Ρ‚:, (*17)

    WHERE name > "Alex" AND col_name_1 = "scalar" AND (col_name_2 = "scalar_1" OR col_name_2 = "scalar_2")

The Versions

14/05 2014

dev-master

9999999-dev https://github.com/stdtech/dbo

Simple ORM for PHP 5.3

  Sources   Download

MIT

The Requires

  • php >=5.3.0

 

orm mysql

24/04 2013

v1.0

1.0.0.0 https://github.com/stdtech/dbo

Simple ORM for PHP 5.3

  Sources   Download

MIT

The Requires

  • php >=5.3.0

 

orm mysql