Go to file
Blaine Schmeisser 81a2f5b919 Pass the response by reference so it can be overwritten in filters
You can edit the response but you can't overwrite it:
~~~ php
<?php
// https://gist.github.com/3896743
$response = new stdClass();

echo '1): ' . spl_object_hash($response) . PHP_EOL; // 0000000021e89fcd00000000e93b17ba

call_user_func_array(function($response) {
	$response = new stdClass();
	echo '2): ' . spl_object_hash($response) . PHP_EOL; // 0000000021e89fcf00000000e93b17ba
}, array($response));

echo '3): ' . spl_object_hash($response) . PHP_EOL; // 0000000021e89fcd00000000e93b17ba

call_user_func_array(function($response) {
	$response = new stdClass();
	echo '4): ' . spl_object_hash($response) . PHP_EOL; // 0000000021e89fcf00000000e93b17ba // hash descoped and reused
}, array(&$response));

echo '5): ' . spl_object_hash($response) . PHP_EOL; // 0000000021e89fcf00000000e93b17ba
~~~

Otherwise you'd make the new response object and overwrite the values one at a time:
~~~ php
<?php
// https://gist.github.com/3897032
Route::filter('after', function($response)
{
	$params = \Laravel\Request::$route->parameters;
	// The 'type' is the last param
	// example: /product/(:num).(:any)
	$type = array_pop($params);
	if($type == 'json') {
		$res = Response::json($response->content->data);
		foreach($response as $key => &$value) {
			$response->$key = $res->$key;
		}
	}
});
~~~

Signed-off-by: Blaine Schmeisser <blaine.schmeisser@vitals.com>
2012-10-16 09:12:29 -05:00
application Update application/language/de/validation.php 2012-09-15 21:36:34 +03:00
bundles fixing merge issues 2012-07-27 13:52:15 +01:00
laravel Pass the response by reference so it can be overwritten in filters 2012-10-16 09:12:29 -05:00
public increment version. refactor eloquent eager loading matching. 2012-10-07 14:04:29 -05:00
storage Changed .gitignore in session to ignore all contents 2012-05-25 09:45:46 +01:00
.gitattributes added gitattributes file and updated gitignore 2012-05-18 23:51:00 -06:00
.gitignore added gitattributes file and updated gitignore 2012-05-18 23:51:00 -06:00
.travis.yml Remove notification from travis file. 2012-09-01 22:16:30 -05:00
CONTRIBUTING.md Add a CONTRIBUTING.md file for GitHub. 2012-09-17 18:58:24 +02:00
artisan increment version. refactor eloquent eager loading matching. 2012-10-07 14:04:29 -05:00
license.txt added certificate of origin to license file. 2012-02-25 14:09:03 -06:00
paths.php increment version. refactor eloquent eager loading matching. 2012-10-07 14:04:29 -05:00
readme.md fixed readme.md wrong symbol 2012-09-08 21:13:56 +08:00

readme.md

Laravel - A PHP Framework For Web Artisans

Laravel is a clean and classy framework for PHP web development. Freeing you from spaghetti code, Laravel helps you create wonderful applications using simple, expressive syntax. Development should be a creative experience that you enjoy, not something that is painful. Enjoy the fresh air.

Official Website & Documentation

Feature Overview

  • Simple routing using Closures or controllers.
  • Views and templating.
  • Driver based session and cache handling.
  • Database abstraction with query builder.
  • Authentication.
  • Migrations.
  • PHPUnit Integration.
  • A lot more.

A Few Examples

Hello World:

<?php

Route::get('/', function()
{
	return "Hello World!";
});

Passing Data To Views:

<?php

Route::get('user/(:num)', function($id)
{
	$user = DB::table('users')->find($id);

	return View::make('profile')->with('user', $user);
});

Redirecting & Flashing Data To The Session:

<?php

return Redirect::to('profile')->with('message', 'Welcome Back!');

Contributing to Laravel

Contributions are encouraged and welcome; however, please review the Developer Certificate of Origin in the "license.txt" file included in the repository. All commits must be signed off using the -s switch.

git commit -s -m "this commit will be signed off automatically!"

License

Laravel is open-sourced software licensed under the MIT License.