小编Clé*_*aud的帖子

PHP从数组中删除特定项

我有一个像这样的数组: [312, 401, 1599, 3]

随着array_diff( [312, 401, 1599, 3], [401] )我可以删除一个值,在我的例子我删除了值401.

但如果我有这个:[312,401,401,401,1599,3],如何只删除一次值401?

如果我删除第一个或最后一个值并不重要,我只需删除ONE 401值,如果我想删除所有401值,我必须删除三次.

谢谢 !

php arrays

8
推荐指数
1
解决办法
1万
查看次数

在表单类型选项上检查Symfony设置值

我使用带有Symfony的FormBuilder创建一个表单,如:

$builder
            ->add('timeBarOpen', 'time', array('label' => 'Ouverture Bar', 'attr' => array('class' => 'form-control')))
            ->add('timeBarClose', 'time', array('label' => 'Fermeture Bar', 'attr' => array('class' => 'form-control')))
            ->add('timeStartHappyHour', 'time', array('label' => 'Début Happy Hour *', 'attr' => array('class' => 'form-control')))
            ->add('timeEndHappyHour', 'time', array('label' => 'Fin Happy Hour *', 'attr' => array('class' => 'form-control')))
            ->add('day', 'choice', [
                'choices' => $days,
                'multiple' => true,
                'expanded' => true,
                'label' => 'Jour(s) *',
            ])
        ;
Run Code Online (Sandbox Code Playgroud)

$ days是一个数组:

$days = array(
            'Monday'    => 'Lundi',
            'Tuesday'   => 'Mardi',
            'Wednesday' …
Run Code Online (Sandbox Code Playgroud)

forms symfony

7
推荐指数
1
解决办法
2万
查看次数

主义,删除集合?

我需要使用Sytrfony2删除带有Doctrine的集合.

所以,我检索所有这样的对象:

$comments = $em->getRepository('ProjectApplicationBundle:Comment')->findBy(array('user_id' => $user_id));
Run Code Online (Sandbox Code Playgroud)

所以,有了这个,我可以检索很多评论.

我该如何删除这些评论?一个简单的$em->remove($comments)不起作用.

是否需要循环注释并删除每个元素?最好直接编写查询?有更好的方法吗?谢谢

php symfony doctrine-orm

7
推荐指数
1
解决办法
6910
查看次数

Sonata管理员,过滤器中的自定义查询

我正在使用SonataAdminBundle,我对MyEntityAdmin类中的过滤器有疑问.

我有一个第一个功能protected function configureFormFields(FormMapper $formMapper)列出要在创建/编辑表单上显示的所有字段.

如果我有一个字段类型实体,我可以这样做:

->add('commercial', 'entity', array(
                'class' => 'MyBundle:User',
                'query_builder' => function(EntityRepository $er) {
                  return $er->createQueryBuilder('u')
                            ->groupBy('u.id')
                            ->orderBy('u.id', 'ASC')
                            ->setParameters(array(1 => 'Commercial'));
              },)
            )
Run Code Online (Sandbox Code Playgroud)

但是我有另一个函数protected function configureDatagridFilters(DatagridMapper $datagridMapper)可以在过滤器表单上显示Fields,而且我对同一件事做了一个实体字段类型的自定义查询,但是如果我这样做,我有错误:

No attached service to type named `entity`  
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点 ?

symfony sonata-admin

7
推荐指数
1
解决办法
1万
查看次数

Laravel获得没有追加属性的模型

我正在使用Laravel 5.3,在模型中Post,我有一个追加属性:

/*
* toJson
*/
protected $appends = ['count'];
Run Code Online (Sandbox Code Playgroud)

而神奇的方法:

public function getCountAttribute()
    {
        return Offer::where('id', '=', $this->id)->count();
    }
Run Code Online (Sandbox Code Playgroud)

所以,当我得到一个Post像eloquent一样的模型Post::get(),并以json为例得到返回时,我总是count在我的对象中有这个属性.

我如何指定我是否要这个或另一个附加属性?

php laravel eloquent laravel-5 laravel-5.3

7
推荐指数
1
解决办法
3461
查看次数

jQuery,检测元素是否已经切换

我需要用jQuery来知道我的页面上的元素是否已经切换.

我有一个带有XXX元素的菜单.

当我点击一个元素时,我使用:$("#elementXX").slideToggle("slow");(XX是一个数字)

如果我点击另一个元素,我需要知道一个元素是否已经切换,我需要关闭此元素才能滑动我的新元素.

我怎样才能做到这一点 ?我无法通过id检查id,如#element1,#element2,#element3等....

谢谢 !

jquery toggle

6
推荐指数
1
解决办法
9846
查看次数

jQuery ajax,使用输入类型文件和Json发送表单

我有一个带有几个输入和其他字段的表单.

我有一个保存按钮,当我点击时,我发送带有jQuery的ajax表单:

$.ajax({
        type:       "POST",
        dataType:   "json",
        url:        $('#ajaxUrl').val(),
        data:       "action=save&" + form.serialize()
});
Run Code Online (Sandbox Code Playgroud)

所以,当我只有像文本这样的简单输入时,选择等等.没关系.但如果我有一个输入类型文件,我无法检索我的文件.$ _FILES始终为空.

我怎样才能尽可能简单地做到这一点?

编辑:我不想使用插件:)

ajax jquery file

6
推荐指数
1
解决办法
3万
查看次数

地理定位不适用于Firefox

所以,我使用这个代码:

var options = {
  enableHighAccuracy: true,
  timeout: 2000,
  maximumAge: 100
  };

navigator.geolocation.getCurrentPosition(localizeMe, errorLocalize, options);
Run Code Online (Sandbox Code Playgroud)

在回调localizeMe上,我做了一些成功的事情,并且当此代码不起作用时,errorLocalize会向我显示警报.

当我在Chrome上试用此代码时,没关系,我没有问题.但是在firefox上,当我尝试这段代码时,我总是有警报错误,回调错误总是被调用...你有什么想法吗?

firefox geolocation

6
推荐指数
1
解决办法
3463
查看次数

Doctrine更新实体循环,持久还是刷新?

我有多个循环,如:

    $bets = $this->em->getRepository('AppBundle:Bet')->getBetsForMatch($match_id);

    foreach ($bets as $key => $bet) {
        $devices = $this->em->getRepository('AppBundle:Device')->findBy(array('user' => $bets->getUser()));

        foreach ($devices as $key => $device) {
            //HERE I SEND A PUSH NOTIFICATION

            if($this->rms_push->send($message)){
                $device->getUser()->setBadge($device->getUser()->getBadge() + 1);
                $this->em->flush();
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

所以,我得到了一场比赛的所有赌注,因为每次下注我都会为用户保存所有设备,之后我需要更新我的用户: $device->getUser()->setBadge($device->getUser()->getBadge() + 1);

现在,我每次冲洗,但我认为有更好的方法,想法?

symfony doctrine-orm

6
推荐指数
1
解决办法
6607
查看次数

SQL UPDATE或DELETE如果重复

我正在尝试在我的数据库中运行3个查询:

UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '61';
UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '62';
UPDATE `table` SET `rubriq` = '77' WHERE `rubriq` = '63';
Run Code Online (Sandbox Code Playgroud)

table我有两列abonnerubriq.Abonne是主键,两个是索引.

如果在我的数据库中我有例如:

 abonne  | rubriq  
  84     |   61  
  84     |   62 
  84     |   63
Run Code Online (Sandbox Code Playgroud)

当我运行我的3个查询时,第一个没有问题,但对于第二个,我有一个错误: #1062 - Duplicate entry '84-77' for key 1

如何运行这3个查询但是,当出现这样的错误时,只需删除该行?

谢谢 !

mysql

5
推荐指数
1
解决办法
688
查看次数