小编yiv*_*ivi的帖子

从Mysql数据库生成模型

我正在研究使用Doctrine的项目.所以我开始学习Doctrine并编写简单的测试并在一开始就陷入困境.之前我开发了很多cakePHP应用程序,我对蛋糕烘焙有很好的了解.

我有一个测试mysql数据库和2个表.我想生成所有模型类,并希望将它们包含在我的MVC应用程序的控制器中以进行CRUD.

我使用composer安装了Doctrine,并在项目文件夹中找到了一个名为/ vendor的文件夹.在项目文件夹中创建了一个新的bootstrap.php

/vendor
/bootstrap.php 
Run Code Online (Sandbox Code Playgroud)

bootstrap.php里面的代码是

// bootstrap.php
require_once "vendor/autoload.php";

use Doctrine\ORM\Tools\Setup;
use Doctrine\ORM\EntityManager;

$paths = array("/path/to/entities-or-mapping-files");
$isDevMode = false;

// the connection configuration
$dbParams = array(
    'driver' => 'pdo_mysql',
    'user' => 'root',
    'password' => '',
    'dbname' => 'test',
);

$config = Setup::createAnnotationMetadataConfiguration($paths, $isDevMode);
$em = EntityManager::create($dbParams, $config);
Run Code Online (Sandbox Code Playgroud)

我看到旧版本中有一个名为Doctrine_Core :: generateModelsFromDb的方法.

我只想要基本模型开始,并想知道如何将它们包含在其他PHP文件中以进行CRUD.

model doctrine-orm

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

魔术函数__call函数不起作用

我正在尝试使用魔法函数进行重载

这是我的代码:

类文件1

    class vLiteUser{
        public function __call($methodname,$arguments)
        {
            if($methodname=='UserLogin'){
                switch(count($arguments)){
                    case 1:
                                $this->UserLogin($arguments[0]);
                        break;
                    case 2:
                                $this->UserLogin($arguments[0],$arguments[1]);
                        break;
                    default:    echo "string";
                                break
                }
            }   
        }    

    public function UserLogin($data0='')
    {
        echo $data0;
    }

    public function UserLogin($data0='',$data2='')
    {   
            echo $pass
    }
} ?>
Run Code Online (Sandbox Code Playgroud)

我在另一个文件中创建了对象

 $userObj = new vLiteUser();
 $userObj->UserLogin(data0,data1);
 $userObj->UserLogin(data0);
Run Code Online (Sandbox Code Playgroud)

我可能缺少一些东西,但无法找到它到底是什么

我还想问私有函数是否也包含在重载中。

php overloading

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

为什么我们应该使用composer而不是include_once或require_once?

我搜索了许多博客和网站,但找不到完美的答案。每当我使用作曲家时,我都必须包括autoload.php文件,然后对于每个要自动加载的类,我都必须将该类与命名空间一起使用。现在,我想知道这个作曲家的优势是什么,在这里我可以轻松地包含类文件通过include_once或require_once而不是分别使用autoload.php和类文件。当我使用作曲家时,我必须编写以下代码:

include_once("vendor/autoload.php");
use namespace/derectoryname/classname;
Run Code Online (Sandbox Code Playgroud)

每当我手动添加

include_once("classname.php");
Run Code Online (Sandbox Code Playgroud)

谁能清除这些?

php composer-php

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

捕获行尾字符串,但避免捕获匹配的尾随字符

我或多或少有以下几行:

$strings = [
  "Concepto de la transferencia    Un concepto uno        ",
  "Concepto traspaso    Orden #121231",
  "Concepto trasnferencia       121231 Magical Concept      ",
 ]
Run Code Online (Sandbox Code Playgroud)

并有以下正则表达式:

|Concepto\s+(?>de la )?(?>tr.+erencia|traspaso)\s+(?P<concepto>.+)$|
Run Code Online (Sandbox Code Playgroud)

这很好地捕获了每个字符串的末尾部分:

  "Un concepto uno        "
  "Orden #121231"
  "121231 Magical Concept       "
Run Code Online (Sandbox Code Playgroud)

(包括尾随空格).但是当我们存在时,我希望匹配排除尾随空格.导致:

  "Un concepto uno"
  "Orden #121231"
  "121231 Magical Concept"
Run Code Online (Sandbox Code Playgroud)

我试过了:

Concepto\s+(?>de la )?(?>tr.+erencia|traspaso)\s+(?P<concepto>.+)(?>\s+)?$
Run Code Online (Sandbox Code Playgroud)

要么

Concepto\s+(?>de la )?(?>tr.+erencia|traspaso)\s+(?P<concepto>.+)\s*$
Run Code Online (Sandbox Code Playgroud)

但显然没有工作.无法使内联修饰符Eg(U)适用于该concepto组.

我知道我不能trim完成比赛并完成比赛.只是想让这个正则表达式工作.:)

php regex pcre

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

Qt-新QThread(this)和新QThread()有什么区别?

我想知道有什么区别之间存在new QThread(this)以及new QThread()和这将如何使用时,影响我的代码的行为的QThread.

c++ qt qthread

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

在keras层中包装张量流功能

我试图在keras lambda层中使用tensorflow唯一函数(https://www.tensorflow.org/api_docs/python/tf/unique)。代码如下:

    def unique_idx(x):
        output = tf.unique(x)
        return output[1]

then 

    inp1 = Input(batch_shape(None, 1))
    idx = Lambda(unique_idx)(inp1)

    model = Model(inputs=inp1, outputs=idx)
Run Code Online (Sandbox Code Playgroud)

现在使用时**model.compile(optimizer='Adam', loss='mean_squared_error')** 出现错误:

ValueError:张量转换请求的dtype float32的张量为dtype int32:'Tensor(“ lambda_9_sample_weights_1:0”,shape =(?,),dtype = float32)'

有人知道这里的错误是什么或使用张量流函数的其他方式吗?

python python-3.x keras

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

set.seed()的最大值是多少?

我正在研究中等大小的数据集,比如从具有100,000个观测值的大型数据集中采集的9000个观测值.

我可以使用以下set.seed()函数来保证每次都获得完全相同的子集吗?

set.seed(10000)  
Run Code Online (Sandbox Code Playgroud)

我可以使用set.seed()的最大值是多少?

r

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

Symfony DI:未捕获的 ArgumentCountError:函数 App::__construct() 的参数太少,在第 28 行传入 index.php 的参数为 0,预期为 1

我正在尝试实现 Symfonys 依赖注入容器。

我设置了 2 个容器,一个用于数据库,一个用于系统用户。

和我使用addArgument()的这两个App阶级和SystemUser阶级,推到AppSystemUser对象,并为SystemUserDatabase对象。

索引.php:

require_once 'vendor/autoload.php';

use TestingDI\App;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Reference;

$containerBuilder = new ContainerBuilder();
$containerBuilder->register('database', '\TestingDI\Database');

$containerBuilder->register('system.user', '\TestingDI\SystemUser')
                 ->addArgument(new Reference('database'));

$containerBuilder->register('app', '\TestingDI\App')
                 ->addArgument(new Reference('system.user'));


$database       = $containerBuilder->get('database');
$systemUser     = $containerBuilder->get('system.user');
$app            = $containerBuilder->get('app');

# Initialize App class
$app = new App();
Run Code Online (Sandbox Code Playgroud)

应用程序.php:

<?php 

namespace TestingDI;

use TestingDI\SystemUser; 


class App {

    public $systemUser; 

    public function __construct(SystemUser $systemUser)
    {
        var_dump($systemUser);
    }
} …
Run Code Online (Sandbox Code Playgroud)

php dependency-injection symfony symfony-dependency-injection

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

如何在控制台上写入具有特定大小/记录块的流数据?

我需要通过 Spark Streaming 读取 CSV 文件,并将输出流写入具有特定行/大小块的控制台。

使用 Spark StreamingreadStream读取 CSV 并将writeStream其写入控制台。

val df: DataFrame = sparkSession.readStream
      .option("sep", ",")
      .schema(userSchema)
      .csv("path")


val res: StreamingQuery = df.writeStream
      .format("console")
      .start()
Run Code Online (Sandbox Code Playgroud)

我希望所有 50000 行以 50 行为一组显示在控制台中,但我只得到 20 行,或者我需要设置一个要在控制台中显示的数字。

apache-spark spark-structured-streaming

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

如何将全局变量注入所有模板?

在我的树枝模板也有一些需要每一页就像变量userNameuserIduserImage

将它们注入模板的最佳方法是什么?

我已经读过文章如何将变量注入所有模板,但是如何将变量(例如当前用户)写入config/packages/twig.php文件?

现在,每个控制器中都有这样的代码:

return $this->render('admin/users/index.html.twig', [
   "allUsers" => $allUsers,
   "pageTitle" => "Benutzerübersicht",
   "userName" => "Max Mustermann",
   "userId" => 5,
   "userImage" => "http://i.pravatar.cc/150?img=6"
]);
Run Code Online (Sandbox Code Playgroud)

(这些只是示例值,因为我尚未集成Authentication,但想创建我的模板)

有没有比在每个控制器中注入每个变量更好的方法了?

php symfony twig symfony4

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