GVKun编程网logo

php – 从Symfony 1.4任务记录Doctrine查询(php实现简单的查询功能)

10

如果您想了解php–从Symfony1.4任务记录Doctrine查询和php实现简单的查询功能的知识,那么本篇文章将是您的不二之选。我们将深入剖析php–从Symfony1.4任务记录Doctrin

如果您想了解php – 从Symfony 1.4任务记录Doctrine查询php实现简单的查询功能的知识,那么本篇文章将是您的不二之选。我们将深入剖析php – 从Symfony 1.4任务记录Doctrine查询的各个方面,并为您解答php实现简单的查询功能的疑在这篇文章中,我们将为您介绍php – 从Symfony 1.4任务记录Doctrine查询的相关知识,同时也会详细的解释php实现简单的查询功能的运用方法,并给出实际的案例分析,希望能帮助到您!

本文目录一览:

php – 从Symfony 1.4任务记录Doctrine查询(php实现简单的查询功能)

php – 从Symfony 1.4任务记录Doctrine查询(php实现简单的查询功能)

我希望Symfony将我的一个任务执行的Doctrine SQL查询记录到日志文件中,就像Web调试工具栏对非cli代码一样.这可能吗?

> Symfony版本:1.4.12
>学说版本:1.2.4

这是一个任务的示例代码.我希望SELECT查询的记录方式与从动作调用它的方式类似.

class exampleTask extends sfBaseTask
{
        protected function configure()
        {
                parent::configure();

                $this->namespace        = 'test';
                $this->name             = 'example';
        }

        protected function execute($arguments = array(), $options = array())
        {
                $databaseManager = new sfDatabaseManager($this->configuration);

                $users = Doctrine_Core::getTable('SfGuardUser')
                        ->createquery('s')
                        ->select('s.first_name')
                        ->execute();

                foreach($users as $user) {
                        print $user->getFirstName()."\n";
                }
        }
}

解决方法:

尝试使用全局任务选项–trace(快捷键-t).喜欢:

./symfony --trace namespace:task

它会在数据库查询执行时记录它们.

不要忘记在正在运行任务的应用程序的settings.yml中启用日志记录.

因此,如果您在后端的开发环境中运行任务,则可以编辑apps / backend / config / settings.yml:

dev:
  .settings:
    logging_enabled:        true

请注意,这也记录了异常的堆栈跟踪,如果您需要调试任务,这可能也非常有用.

php – Doctrine / Symfony:具有非映射属性的实体

php – Doctrine / Symfony:具有非映射属性的实体

如何将属性添加到不应映射到数据库的实体类?

我需要该属性作为临时值.因此,不应从数据库中提取或持久保存该属性.它既不应该是一个sql计算的值,我需要在PHP代码中设置(并获取)它.

编写没有注释的属性不应作为实体用户的示例链接到数据库.
class User 
{
/**
 * @ORM\Id
 * @ORM\Column(type="integer")
 * @ORM\GeneratedValue(strategy="AUTO")
 */
protected $id;

/**
 * @ORM\Column(type="array")
 */
protected $username;

protected $notPersistedProperty

}

希望这有帮助.

php – Doctrine – Symfony查询错误

php – Doctrine – Symfony查询错误

我有一个错误,我不知道如何解决它.

$query = $entityManager->createquery("UPDATE AppBundle:ChangeAPI SET `key`='asd123' WHERE `id` = 1");
$query->execute();

我的AppBundle:ChangeAPI

/**
 * @ORM\Entity
 * @ORM\Table(name="api")
 */
 class ChangeAPI
 {
     /**
      * @ORM\Column(type="integer")
      * @ORM\Id
      * @ORM\GeneratedValue(strategy="AUTO")
      */
     protected $id;

     /**
      * The date on which the shipment has been created
      *
      * @ORM\Column(type="string", name="key")
      */
     protected $key;

     /** Creates a new standard ride */
     function __construct()
     {
     }
 }

这是我的错误结果:

[Syntax Error] line 0, col 31: Error: Expected Doctrine\ORM\Query\Lexer::T_SET, got '`'
QueryException: [Syntax Error] line 0, col 31: Error: Expected Doctrine\ORM\Query\Lexer::T_SET, got '`'
QueryException: UPDATE AppBundle:ChangeAPI SET `key`='asd123' WHERE `id` = 1 

有人能帮我吗?谢谢.

解决方法:

为什么不使用查询生成器:

$entityManager->createqueryBuilder()
    ->update('AppBundle:ChangeAPI', 'c')
    ->set('c.key', ':key')
    ->where('c.id = :id')
    ->setParameter('key', 'asd123')
    ->setParameter('id', 1)
    ->getQuery()
    ->execute();

完整参考http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/query-builder.html

php – Symfony 2 Doctrine 2覆盖实体配置

php – Symfony 2 Doctrine 2覆盖实体配置

我有一个案例,我需要跨多个应用程序(位于同一个项目中)重用通用的doctrine实体.这些应用程序仅仅是相应机构使用的信息系统的实例.

我已将所有实体和存储库隔离到单独的包中,到目前为止它就像一个魅力.这是一个问题:我收到的要求是,只有部分实例需要支持其他一些功能.修改包括向某些实体添加新的归属/关系.

这是一个简短的例子:

我们有一所拥有众多教师单位的大学(即实例).信息系统的建立只是为了支持学士学位课程,但一个月前我们收到了支持专业和硕士学习的要求.他们希望处理所有他们认为相同的应用程序实例.这仅适用于其中一些实例.

问题:在保持原始功能的同时,有没有办法“覆盖”受影响的实体?我可以覆盖实体配置(YAML或注释,不重要)吗?我真的想保留代码库,而不是将所有实体/存储库复制到另一个包…

解决方法:

我不知道this意味着什么.看起来有可能但尚未记录.我不知道文档或代码是否正在进行中.

In this issue,stof表示根本不可能.

我认为你应该使用SCM分支.

php – Symfony 2 Doctrine导出到JSON

php – Symfony 2 Doctrine导出到JSON

我正在使用Symfony 2和Doctrine 2为iOS应用程序创建Web服务( JSON).

要获取我的实体我做:

$articles = $this->getDoctrine()->getRepository('UdoPaddujourBundle:MenuArticle')->findAll();

我必须告诉你:

$article = array();
$article = $articles->toArray();

给我以下错误:

Fatal error: Call to a member function toArray() on a non-object

同样的事情发生了

$article = $articles->exportTo('json');

我怎样才能创建一个json响应?

亲切的问候,
Cearnau Dan

编辑:
var_dump($articles)=

array(18) {
   [0]=>
     object(Udo\PaddujourBundle\Entity\MenuArticle)#50 (4) {
    ["id":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
    int(1)
    ["name":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
    string(17) "My Article Name 1"
    ["description":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
    string(26) "My Article Description 1"
    ["price":"Udo\PaddujourBundle\Entity\MenuArticle":private]=>
    float(20)
    }
   [1]=> ...

– 稍后编辑

我怎样才能遍历所有“属性名称”?
这就是我所拥有的:

$myarray=array(); 
$myArray["name"]=array(); 
$myArray["description"]=array(); 
foreach($articles in $article) 
{ 
  array_push($myArray["name"],$article->getName());
  array_push($myArray["description"],$article->getDescription()); 
}
如果您使用学说查询,您也可以这样做:
$em = $this->getDoctrine()->getEntityManager();
  $query = $em->createquery('SELECT ma FROM UdoPaddujourBundle:MenuArticle ma ...etc');
  $myArray = $query->getArrayResult();

然后是json_encode($myArray);有关详细信息,请参见here

关于php – 从Symfony 1.4任务记录Doctrine查询php实现简单的查询功能的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于php – Doctrine / Symfony:具有非映射属性的实体、php – Doctrine – Symfony查询错误、php – Symfony 2 Doctrine 2覆盖实体配置、php – Symfony 2 Doctrine导出到JSON等相关内容,可以在本站寻找。

本文标签: