小编u_m*_*der的帖子

如何在没有迭代的情况下将两个数组合并为一个

目前,如果我这样做:

$array1 = [27476, 29173, 24551, 21109, 29754, 19116, 25924, 27406, 26878, 20866, 32889, 25975];

$array2 = [25959, 26427, 26775, 24968, 24501, 27218, 27441, 27353, 25074, 27344, 26794, 25355];

$data = array_merge(
    array_merge_recursive(
        $array1, 
        $array2
    )
);
Run Code Online (Sandbox Code Playgroud)

我明白了:

    array3 = [
    0: 25959
    1: 26427
    2: 26775
    3: 24968
    4: 24501
    5: 27218
    6: 27441
    7: 27353
    8: 25074
    9: 27344
    10: 26794
    11: 25355
    12: 27476
    13: 29173
    14: 24551
    15: 21109
    16: 29754
    17: 19116
    18: 25924
    19: …
Run Code Online (Sandbox Code Playgroud)

php arrays laravel

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

如何在Symfony 4中将queryBuilder与formBuilder一起使用?

我在Symfony中使用查询生成器时遇到困难。像这样,我的选择框列出了存储在我的实体“选项”中的所有数据:

$options['class'] = Options::class;
$options['choice_label'] = function ($value) {
    return $value->getName();
};

$formBuilder->add($name, $class, $options);
Run Code Online (Sandbox Code Playgroud)

但是我想过滤数据,以便选项仅显示连接到我的实体“字段”的特定ID的数据。

这是我使用查询生成器的方法:

$options['class'] = Options::class;
$options['choice_label'] = 'id';
$options['query_builder'] = function (EntityRepository $id) {
    return $this->createQueryBuilder('f')
        ->leftJoin('f.fields', 'fi')
        ->where(":id MEMBER OF f.fields")
        ->setParameter(':id', $id)
        ->getQuery()
        ->execute();
};
Run Code Online (Sandbox Code Playgroud)

我收到的错误消息是:

传递给App \ Controller \ PagesController :: App \ Controller {closure}()的参数1必须是App \ Controller \ EntityRepository的实例,App \ Repository \ OptionsRepository的实例,在/ Users / work / project / vendor /中调用第32行上的symfony / doctrine-bridge / Form / Type / EntityType.php

php oop query-builder formbuilder symfony

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

在控制台日志中看不到对象左侧的数字

我要解决的问题是非常确定地创建了一个动态对象初始化程序。因为我不知道数字的结果,所以不要在对象中对数字进行硬编码。一个代码示例将演示该示例。

香港专业教育学院试图创建一个简单的for循环,以插入一个数字以稍后在控制台中显示,但到目前为止没有成功。

 for(var counter =0; counter <3; counter++){
    var myObject = {counter : "Text"};
    console.log(myObject)
 }
Run Code Online (Sandbox Code Playgroud)

但是输出将显示实际的变量名称,而不是其包含的数字。输出必须完全类似于以下示例:{0:“ Example”}。

Chrome在控制台窗口中的输出:{counter:“ Text”} {counter:“ Text”} {counter:“ Text”}

javascript loops for-loop javascript-objects

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

在 symfony 中重定向到“/”路由

我试图在提交表单后重定向到“/”路由(同一页面):

/**
 * @Route("/")
 */
Run Code Online (Sandbox Code Playgroud)

我的做法:

return $this->redirectToRoute('/');
Run Code Online (Sandbox Code Playgroud)

给了我以下错误:

无法为命名路由“/”生成 URL,因为此类路由不存在。

php symfony symfony4 symfony-4.4

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

PHP - array_unique不起作用

我有一个数组$ tmp:

Array
(
    [0] => 49
    [1] => 49
    [2] => 49
)
Run Code Online (Sandbox Code Playgroud)

使用后array_unique($tmp)我得到这个输出:

Array
(
    [0] => 49
    [1] => 49
    [2] => 49
)
Run Code Online (Sandbox Code Playgroud)

而且我想得到

Array
(
    [0] => 49
)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?我是PHP新手

php arrays array-unique

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

从mysql中选择后,“ == 0”不起作用

我希望我的代码检查特定书籍的可用副本是否为0,以便它将其状态更新为1(使其不可用)

现在我的问题是,无论何时运行我的代码的这一部分,IF语句始终为true,无论之前的Select语句返回的值是1还是更高。因此,即使这本书仍然有副本,也无法使用

$sql = "SELECT Available_Copies from books WHERE id = '$bid'";
$query = $conn->query($sql);
if($sql == 0)
{   
  $sql = $conn->query("UPDATE books SET status = 1 WHERE id = '$bid' ");
  $query = $conn->query($sql);              
}   
Run Code Online (Sandbox Code Playgroud)

php mysql select if-statement zero

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

PHP in_array无法正常执行

所以我有这个

            $changed = $_POST;
            if(in_array("op1", $changed))
            {
                echo 'Yes';
            } else
            {
                echo 'No';
            }
Run Code Online (Sandbox Code Playgroud)

每次我运行它只是说不...

如果我像这样打印我的POST ..

print_r($_POST);
Run Code Online (Sandbox Code Playgroud)

它显示我的数组看起来像这样

Array ( [search] => [op1] => Yes [submit] => Submit Query ) No 
Run Code Online (Sandbox Code Playgroud)

所以我可以看到OP1在那里,但是if(in_array)没有用.

php arrays

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