小编Fed*_*kun的帖子

通过更改查询字符串参数,非路由相关,在Symfony2中进行简单重定向

这应该很简单,我一直在谷歌搜索,但我一直在提出"路线"相关的建议.

我只想执行重定向到同一页面并修改其中一个查询字符串参数(清除一个或设置一个).

我无法在任何地方看到如何做到这一点.

一个选项可能是手动完全生成URL并使用此猜测,但这似乎不是一个非常好的方法:

$this->router->generate("http://domain.com?a=1")
Run Code Online (Sandbox Code Playgroud)

php symfony

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

如何在一个可以具有不同值的属性上查找

我正在尝试显示一个表格,用户将在表格中通过选择不同的选项来决定显示哪些对象。

 if ($form->isValid()) {
        $type = $form->get('type')->getData();
        //Getting values from Array $type returned by getData on the form
        foreach ($type as $livraison) {

            $elements = $this->getDoctrine()
                    ->getManager()
                    ->getRepository('etaqenregistrementBundle:Livraison')
                    ->findBy(array('type' => $livraison));
        }

    }
Run Code Online (Sandbox Code Playgroud)

如果我们选择了两个选项, $type 将是一个包含两个不同对象 $livraison 的数组在 foreach 语句中为var_dump($livraison)):

对象(etaq\adminBundle\Entity\typeLivraison)[434] private 'id' => int 1 private 'valeur' => string 'Interne'(长度=7)

对象(etaq\adminBundle\Entity\typeLivraison)[436] private 'id' => int 3 private 'valeur' => string 'Autorité' (length=9)

但是 findBy 方法只返回一个对象,即表单中第一个被选中的对象。

如果用户在表单中选择了一个参数,我想要的是对一个参数进行排序,或者如果他选择了两个或三个,则对两个参数进行排序......等等

这是我的表格:

    $form = $this->createFormBuilder()
            ->add('ecart', 'choice', array(
                'label' => …
Run Code Online (Sandbox Code Playgroud)

php doctrine symfony

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

具有转义字符的Symfony控制台输出

我正在生成一条消息sprintf(),然后以彩色方式使用Symfony控制台组件输出:

$mask = '<info>%s</info>';
$message = sprintf($mask, 'MyString');
$output->writeln($message);
Run Code Online (Sandbox Code Playgroud)

这通常有效(以绿色输出命名空间).但是,如果字符串以反斜杠结尾,则忽略结束信息 -tag:

$message = sprintf($mask, 'MyString\');
$output->writeln($message);
Run Code Online (Sandbox Code Playgroud)

输出:

MyString</info>
        ^^^^^^^
Run Code Online (Sandbox Code Playgroud)

显然反斜杠似乎是一种逃避角色,但如何逃避呢?或者如何保留结束</info>标记的含义?

到目前为止,我试过:

php console symfony

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

symfony 中的时区

我正在尝试通过 symfony new name_project 2.7.21 运行新的 symfony 项目。不幸的是,我一直遇到错误时区的错误。我在 C:\xampp\php\php.ini 文件中更改了它。我必须在其他地方更改它吗?非常感谢您的帮助

php timezone symfony

5
推荐指数
3
解决办法
8282
查看次数

$ _SERVER ['SERVER_ADDR']可以安全依赖吗?

我的网站非常依赖$_SERVER['SERVER_ADDR'].我可以信任检索到的数据吗?有可能找到一个空字符串?

php

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

使用应用程序REST的不同处理程序捕获异常

问题

我正在用Silex构建一个小应用程序.它分为REST应用程序和网站.(两个控制器,相同的应用程序).该网站已经安装了自己的自定义错误处理程序,它返回一个用户友好的html页面.问题是在部分专用REST应用程序中,我应该以某种方式处理异常以返回类型[json]和与错误处理程序的自定义网站不同的内容.

使用Symfony2

这个参数也可以应用于Symfony2,我想也可以解决它!

Silex的第一个解决方案

将方法包装在try-catch块中,以便将异常重新抛出到处理程序中.

$app->get('/api/show-list', function() use($app){
    try {
        $show = // db query, etc.
        return $app->json(array('show' => $show), 200);
    } catch (Exception $e) {
        throw new MyException;
    }
});

$app->error(function (MyException $e, $code) {
    // error api
});
Run Code Online (Sandbox Code Playgroud)

问题是如果从我的控制器中抛出异常,将使用默认的错误处理程序.一些技巧?和Symfony?

php exception-handling symfony silex

4
推荐指数
2
解决办法
2459
查看次数

什么+?正则表达式?

+?在正则表达式中看到了很多,但我不确定它的真正含义.我知道+手段1或更多,?手段01.所以呢+?手段0或更多?在那种情况下,为什么不只是使用*,这意味着0什么?

我只需要知道+?手段0或更多,或者它意味着不同的东西.然后我会删除这个问题,如果它太烦人了.

php regex

4
推荐指数
1
解决办法
4267
查看次数

为什么我们在Symfony2控制器的方法中使用"Action"?

我刚刚开始研究symfony2书.我想知道为什么我们命名控制器的功能Action:

public function [something]Action() { // ...
Run Code Online (Sandbox Code Playgroud)

在目前为止的书中的每个例子中,我在网上看到的所有代码Action都是函数名.它有什么理由吗?

这非常有效:

<?php

// src/AppBundle/Controller/LuckyController.php
namespace AppBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\JsonResponse;

class LuckyController extends Controller{

    /**
     * @Route("/lucky/number/{count}")
     */
    public function countTESTING($count){
        return new Response(
            '<html><body>I DONT HAVE TO CALL THIS somethingACTION</body></html>
        ');
    }

}
?>
Run Code Online (Sandbox Code Playgroud)

我试过googline这个,但我没有提到或推理为什么.有人可以解释为什么我们使用那个后缀?

php symfony

4
推荐指数
1
解决办法
1240
查看次数

删除树枝中的重音字符

请问如何删除变量 url 中的重音 \n例如 T\xc3\xa9l\xc3\xa9phone 到 Telephone

\n\n
 <td><a href="{{ path(\'search_city\',{\'cityName\':url  }) }}">{{ city }}</a></td> \n
Run Code Online (Sandbox Code Playgroud)\n

php twig

4
推荐指数
1
解决办法
6643
查看次数

持久连接的最后一个id

我目前正在使用mysql_pconnect.

是否存在错误检索插入的最后一个ID的风险?

php mysql

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

Symfony - 公共和管理部分的不同错误页面

我一直在关注http://symfony.com/doc/current/cookbook/controller/error_pages.html上的提示,并在Resources/TwigBundle/views/Exceptions中创建了新模板error500.html.twig.

这工作正常,但如果用户在网站的网站或管理部分,我希望有不同的页面.

有一个简单的方法吗?谢谢你,迈克.

php symfony

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

映射两个数组键和值以在php中创建json对象

嗨伙计们,我正在尝试使用PHP中的值映射键来创建JSON对象,有人可以帮忙.

我的密钥数组:

[
    "ID",
    "NAME",
    "PRICE",
    "TYPE"
]
Run Code Online (Sandbox Code Playgroud)

我的值数组:

[
   [
        "1",
        "Chicken Royal",
        "25",
        "Sandwich"
    ],
    [
        "2",
        "Beef Whopper",
        "30",
        "Burger"
    ],
    [
        "3",
        "Beef Royal",
        "30",
        "Burger"
    ]
]
Run Code Online (Sandbox Code Playgroud)

我正在寻找的是:

[
    "ID":"1",
    "NAME":"Chicken Royal",
    "PRICE":"25",
    "TYPE":"Sandwich"
]
Run Code Online (Sandbox Code Playgroud)

我用过这个功能

$result = array_map( function($k,$v) { return array('column' => $k,'value' => $v); }, array_keys($columnNames),$values);
Run Code Online (Sandbox Code Playgroud)

php arrays json key

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

标签 统计

php ×12

symfony ×7

arrays ×1

console ×1

doctrine ×1

exception-handling ×1

json ×1

key ×1

mysql ×1

regex ×1

silex ×1

timezone ×1

twig ×1