Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
syncEnrollments
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
Yeray Santana Hualde
syncEnrollments
Commits
573725ad
Commit
573725ad
authored
Mar 28, 2012
by
Taylor Otwell
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
use symfony http foundation where applicable.
parent
de1abef9
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
73 additions
and
163 deletions
+73
-163
core.php
laravel/core.php
+24
-5
request.php
laravel/request.php
+42
-18
uri.php
laravel/uri.php
+7
-140
No files found.
laravel/core.php
View file @
573725ad
...
...
@@ -92,14 +92,18 @@ Autoloader::map(array(
| Register The Symfony Components
|--------------------------------------------------------------------------
|
| Laravel's "Artisan" CLI makes use of the Symfony Console component to
| build a wonderful CLI environment that is both robust and testable.
| We'll register the component's namespace here.
| Laravel makes use of the Symfony components where the situation is
| applicable and it is possible to do so. This allows us to focus
| on the parts of the framework that are unique and not re-do
| plumbing code that others have written.
|
*/
Autoloader
::
namespaces
(
array
(
'Symfony\Component\Console'
=>
path
(
'base'
)
.
'vendor/Symfony/Component/Console'
,
'Symfony\Component\Console'
=>
path
(
'base'
)
.
'vendor/Symfony/Component/Console'
,
'Symfony\Component\HttpFoundation'
=>
path
(
'base'
)
.
'vendor/Symfony/Component/HttpFoundation'
,
));
/*
...
...
@@ -157,4 +161,19 @@ $bundles = require path('app').'bundles'.EXT;
foreach
(
$bundles
as
$bundle
=>
$config
)
{
Bundle
::
register
(
$bundle
,
$config
);
}
\ No newline at end of file
}
/*
|--------------------------------------------------------------------------
| Register The Laravel Bundles
|--------------------------------------------------------------------------
|
| Finally we will register all of the bundles that have been defined for
| the application. None of them will be started, yet but will be setup
| so that they may be started by the develop at any time.
|
*/
use
Symfony\Component\HttpFoundation\Request
as
FoundationRequest
;
Request
::
$request
=
FoundationRequest
::
createFromGlobals
();
\ No newline at end of file
laravel/request.php
View file @
573725ad
...
...
@@ -2,6 +2,13 @@
class
Request
{
/**
* The Symfony HttpFoundation Request instance.
*
* @var HttpFoundation\Request
*/
public
static
$request
;
/**
* All of the route instances handling the request.
*
...
...
@@ -71,20 +78,7 @@ class Request {
*/
public
static
function
ip
(
$default
=
'0.0.0.0'
)
{
if
(
isset
(
$_SERVER
[
'HTTP_X_FORWARDED_FOR'
]))
{
return
$_SERVER
[
'HTTP_X_FORWARDED_FOR'
];
}
elseif
(
isset
(
$_SERVER
[
'HTTP_CLIENT_IP'
]))
{
return
$_SERVER
[
'HTTP_CLIENT_IP'
];
}
elseif
(
isset
(
$_SERVER
[
'REMOTE_ADDR'
]))
{
return
$_SERVER
[
'REMOTE_ADDR'
];
}
return
value
(
$default
);
return
value
(
static
::
$request
->
getClientIp
(),
$default
);
}
/**
...
...
@@ -97,6 +91,26 @@ class Request {
return
array_get
(
$_SERVER
,
'SERVER_PROTOCOL'
,
'HTTP/1.1'
);
}
/**
* Get the list of acceptable content types for the request.
*
* @return array
*/
public
static
function
accept
()
{
return
static
::
$request
->
getAcceptableContentTypes
();
}
/**
* Determine if the request accepts a given content type.
*
* @return bool
*/
public
static
function
accepts
(
$type
)
{
return
in_array
(
$type
,
static
::
accept
());
}
/**
* Determine if the current request is using HTTPS.
*
...
...
@@ -104,7 +118,7 @@ class Request {
*/
public
static
function
secure
()
{
return
isset
(
$_SERVER
[
'HTTPS'
])
and
strtolower
(
$_SERVER
[
'HTTPS'
])
!==
'off'
;
return
static
::
$request
->
isSecure
()
;
}
/**
...
...
@@ -126,9 +140,7 @@ class Request {
*/
public
static
function
ajax
()
{
if
(
!
isset
(
$_SERVER
[
'HTTP_X_REQUESTED_WITH'
]))
return
false
;
return
strtolower
(
$_SERVER
[
'HTTP_X_REQUESTED_WITH'
])
===
'xmlhttprequest'
;
return
static
::
$request
->
isXmlHttpRequest
();
}
/**
...
...
@@ -182,4 +194,16 @@ class Request {
return
static
::
$route
;
}
/**
* Pass any other methods to the Symfony request.
*
* @param string $method
* @param array $parameters
* @return mixed
*/
public
static
function
__callStatic
(
$method
,
$parameters
)
{
return
call_user_func_array
(
array
(
static
::
$request
,
$method
),
$parameters
);
}
}
\ No newline at end of file
laravel/uri.php
View file @
573725ad
...
...
@@ -16,16 +16,6 @@ class URI {
*/
public
static
$segments
=
array
();
/**
* The server variables to check for the URI.
*
* @var array
*/
protected
static
$attempt
=
array
(
'PATH_INFO'
,
'REQUEST_URI'
,
'PHP_SELF'
,
'REDIRECT_URL'
);
/**
* Get the full URI including the query string.
*
...
...
@@ -33,7 +23,7 @@ class URI {
*/
public
static
function
full
()
{
return
static
::
current
()
.
static
::
query
();
return
Request
::
getUri
();
}
/**
...
...
@@ -45,45 +35,14 @@ class URI {
{
if
(
!
is_null
(
static
::
$uri
))
return
static
::
$uri
;
// To get the URI, we'll first call the detect method which will spin
// through each of the server variables that we check for the URI in
// and use the first one we encounter for the URI.
static
::
$uri
=
static
::
detect
();
// If you ever encounter this error, please inform the nerdy Laravel
// dev team with information about your server. We want to support
// Laravel an as many servers as we possibly can!
if
(
is_null
(
static
::
$uri
))
{
throw
new
\Exception
(
"Could not detect request URI."
);
}
static
::
segments
(
static
::
$uri
);
// We'll simply get the path info from the Symfony Request instance and then
// format to meet our needs in the router. If the URI is root, we'll give
// back a single slash, otherwise we'll strip the slashes.
$uri
=
static
::
format
(
Request
::
getPathInfo
());
return
static
::
$uri
;
}
static
::
segments
(
$uri
);
/**
* Detect the URI from the server variables.
*
* @return string|null
*/
protected
static
function
detect
()
{
foreach
(
static
::
$attempt
as
$variable
)
{
// Each variable we search for the URI has its own parser function
// which is responsible for doing any formatting before the value
// is fed into the main formatting function.
$method
=
"parse_
{
$variable
}
"
;
if
(
isset
(
$_SERVER
[
$variable
]))
{
$uri
=
static
::
$method
(
$_SERVER
[
$variable
]);
return
static
::
format
(
$uri
);
}
}
return
static
::
$uri
=
$uri
;
}
/**
...
...
@@ -94,21 +53,6 @@ class URI {
*/
protected
static
function
format
(
$uri
)
{
// First we want to remove the application's base URL from the URI if it is
// in the string. It is possible for some of the parsed server variables to
// include the entire document root in the string.
$uri
=
static
::
remove_base
(
$uri
);
$index
=
'/'
.
Config
::
get
(
'application.index'
);
// Next we'll remove the index file from the URI if it is there and then
// finally trim down the URI. If the URI is left with spaces, we'll use
// a single slash for the root URI.
if
(
$index
!==
'/'
)
{
$uri
=
static
::
remove
(
$uri
,
$index
);
}
return
trim
(
$uri
,
'/'
)
?:
'/'
;
}
...
...
@@ -138,61 +82,6 @@ class URI {
return
preg_match
(
'#'
.
$pattern
.
'#'
,
$uri
);
}
/**
* Parse the PATH_INFO server variable.
*
* @param string $value
* @return string
*/
protected
static
function
parse_path_info
(
$value
)
{
return
$value
;
}
/**
* Parse the REQUEST_URI server variable.
*
* @param string $value
* @return string
*/
protected
static
function
parse_request_uri
(
$value
)
{
return
parse_url
(
$value
,
PHP_URL_PATH
);
}
/**
* Parse the PHP_SELF server variable.
*
* @param string $value
* @return string
*/
protected
static
function
parse_php_self
(
$value
)
{
return
$value
;
}
/**
* Parse the REDIRECT_URL server variable.
*
* @param string $value
* @return string
*/
protected
static
function
parse_redirect_url
(
$value
)
{
return
$value
;
}
/**
* Remove the base URL off of the request URI.
*
* @param string $uri
* @return string
*/
protected
static
function
remove_base
(
$uri
)
{
return
static
::
remove
(
$uri
,
parse_url
(
URL
::
base
(),
PHP_URL_PATH
));
}
/**
* Get a specific segment of the request URI via an one-based index.
*
...
...
@@ -228,26 +117,4 @@ class URI {
static
::
$segments
=
array_diff
(
$segments
,
array
(
''
));
}
/**
* Remove a given value from the URI.
*
* @param string $uri
* @param string $value
* @return string
*/
protected
static
function
remove
(
$uri
,
$value
)
{
return
(
strpos
(
$uri
,
$value
)
===
0
)
?
substr
(
$uri
,
strlen
(
$value
))
:
$uri
;
}
/**
* Get the query string for the current request.
*
* @return string
*/
protected
static
function
query
()
{
return
(
count
((
array
)
$_GET
)
>
0
)
?
'?'
.
http_build_query
(
$_GET
)
:
''
;
}
}
\ No newline at end of file
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