1. Go to this page and download the library: Download devweyes/db-orm 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/ */
devweyes / db-orm example snippets
class Model extends \Jcsp\Orm\Eloquent\Model
declare(strict_types=1);
namespace App\Model\Entity;
use Swoft\Orm\Annotation\Mapping\HasOne;
use Swoft\Orm\Annotation\Mapping\RelationPassive;
use Swoft\Db\Eloquent\Model;
/**
*
* Class Api
*
* @since 2.0
*
* @Entity(table="users")
*/
class User extends Model
{
/**
* @HasOne(
* entity=Role::class,
* foreign="id",
* owner="user_id"
* )
* @var mixed
*/
private $roles;
/**
* @param $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* 获取一个角色
* @RelationPassive()
* @return mixed
*/
public function getRoles()
{
return $this->roles;
}
}
declare(strict_types=1);
namespace App\Model\Entity;
use Swoft\Orm\Annotation\Mapping\HasMany;
use Swoft\Orm\Annotation\Mapping\RelationPassive;
use Swoft\Db\Eloquent\Model;
/**
*
* Class Api
*
* @since 2.0
*
* @Entity(table="users")
*/
class User extends Model
{
/**
* @HasMany(
* entity=Role::class,
* foreign="id",
* owner="user_id"
* )
* @var mixed
*/
private $roles;
/**
* @param $roles
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* 获取专属的多个角色
* @RelationPassive()
* @return mixed
*/
public function getRoles()
{
return $this->roles;
}
}
declare(strict_types=1);
namespace App\Model\Entity;
use Swoft\Orm\Annotation\Mapping\BelongsTo;
use Swoft\Orm\Annotation\Mapping\RelationPassive;
use Swoft\Db\Eloquent\Model;
/**
*
* Class Api
*
* @since 2.0
*
* @Entity(table="roles")
*/
class Role extends Model
{
/**
* @BelongsTo(
* entity=User::class,
* foreign="user_id",
* owner="id"
* )
* @var mixed
*/
private $users;
/**
* @param $roles
*/
public function setUsers($users)
{
$this->users = $users;
}
/**
* 获取角色的账号
* @RelationPassive()
* @return mixed
*/
public function getUsers()
{
return $this->users;
}
}
declare(strict_types=1);
namespace App\Model\Entity;
use Swoft\Orm\Annotation\Mapping\BelongsToMany;
use Swoft\Orm\Annotation\Mapping\RelationPassive;
/**
*
* Class Api
*
* @since 2.0
*
* @Entity(table="users")
*/
class User extends Model
{
/**
* @BelongsToMany(
* entity=Role::class,
* pointEntity=UserRole::class,
* foreignPivot="api_id",
* ownerPivot="cat_id",
* foreign="id",
* owner="id"
* )
* @var mixed
*/
private $roles;
/**
* @param $cats
*/
public function setRoles($roles)
{
$this->roles = $roles;
}
/**
* 获取多个角色
* @RelationPassive()
* @return mixed
*/
public function getRoles()
{
return $this->roles;
}
}