在Laravel 4中,是否有一种方法可以根据查询结果获取字段信息?

我可以在纯PHP / MySQL中执行此操作,但我想确保在采用该方法之前,Laravel框架中没有执行此操作的方法。

以下是PHP网站上的示例,说明了fetch_fields()函数。我有兴趣了解是否有Laravel等效的方法可以从fetch_fields()函数获取结果,如下例所示。

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for all columns */
    $finfo = $result->fetch_fields();

    foreach ($finfo as $val) {
        printf("Name:     %s\n", $val->name);
        printf("Table:    %s\n", $val->table);
        printf("max. Len: %d\n", $val->max_length);
        printf("Flags:    %d\n", $val->flags);
        printf("Type:     %d\n\n", $val->type);
    }
    $result->close();
}

/* close connection */
$mysqli->close();
?>

最佳答案

尽管这可能会有所帮助,但不知道这是否正是您想要的。这个SO答案How to get database field type in Laravel?提到了使用原则架构管理器:

$schema = DB:: getDoctrineSchemaManager();


这样,您就可以执行各种方法,例如您提到的方法。参见doctrine documentation

除此之外,不包括该功能,据我所知,您将不得不自己动手。

关于php - 在Laravel 4中获取查询字段信息,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19987751/

10-16 16:46