Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
D
doctrine-dbal
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tomáš Trávníček
doctrine-dbal
Commits
5d300851
Commit
5d300851
authored
May 04, 2020
by
Guilherme Blanco
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Moved back methods
parent
4f2e7511
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
30 additions
and
30 deletions
+30
-30
Table.php
src/Schema/Table.php
+30
-30
No files found.
src/Schema/Table.php
View file @
5d300851
...
...
@@ -731,6 +731,36 @@ class Table extends AbstractAsset
return
array_merge
(
$primaryKeyColumns
,
$foreignKeyColumns
,
$remainderColumns
);
}
/**
* Returns the foreign key columns
*
* @return Column[]
*/
public
function
getForeignKeyColumns
()
{
$foreignKeyColumns
=
[];
foreach
(
$this
->
getForeignKeys
()
as
$foreignKey
)
{
$foreignKeyColumns
=
array_merge
(
$foreignKeyColumns
,
$foreignKey
->
getLocalColumns
());
}
return
$this
->
filterColumns
(
$foreignKeyColumns
);
}
/**
* Returns only columns that have specified names
*
* @param string[] $columnNames
*
* @return Column[]
*/
private
function
filterColumns
(
array
$columnNames
,
bool
$reverse
=
false
)
:
array
{
return
array_filter
(
$this
->
_columns
,
static
function
(
$columnName
)
use
(
$columnNames
,
$reverse
)
:
bool
{
return
in_array
(
$columnName
,
$columnNames
,
true
)
!==
$reverse
;
},
ARRAY_FILTER_USE_KEY
);
}
/**
* Returns whether this table has a Column with the given name.
*
...
...
@@ -795,22 +825,6 @@ class Table extends AbstractAsset
return
$this
->
filterColumns
(
$primaryKey
->
getColumns
());
}
/**
* Returns the foreign key columns
*
* @return Column[]
*/
public
function
getForeignKeyColumns
()
{
$foreignKeyColumns
=
[];
foreach
(
$this
->
getForeignKeys
()
as
$foreignKey
)
{
$foreignKeyColumns
=
array_merge
(
$foreignKeyColumns
,
$foreignKey
->
getLocalColumns
());
}
return
$this
->
filterColumns
(
$foreignKeyColumns
);
}
/**
* Returns whether this table has a primary key.
*
...
...
@@ -1003,18 +1017,4 @@ class Table extends AbstractAsset
return
$this
->
trimQuotes
(
strtolower
(
$identifier
));
}
/**
* Returns only columns that have specified names
*
* @param string[] $columnNames
*
* @return Column[]
*/
private
function
filterColumns
(
array
$columnNames
,
bool
$reverse
=
false
)
:
array
{
return
array_filter
(
$this
->
_columns
,
static
function
(
$columnName
)
use
(
$columnNames
,
$reverse
)
:
bool
{
return
in_array
(
$columnName
,
$columnNames
,
true
)
!==
$reverse
;
},
ARRAY_FILTER_USE_KEY
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment