Progress28.ru

IT Новости
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Php path separator

Предопределенные константы

User Contributed Notes 4 notes

In PHP 5.6 you can make a variadic function.

/**
* Builds a file path with the appropriate directory separator.
* @param string $segments. unlimited number of path segments
* @return string Path
*/
function file_build_path (. $segments ) <
return join ( DIRECTORY_SEPARATOR , $segments );
>

file_build_path ( «home» , «alice» , «Documents» , «example.txt» );
?>

In earlier PHP versions you can use func_get_args.

function file_build_path () <
return join ( DIRECTORY_SEPARATOR , func_get_args ( $segments ));
>

file_build_path ( «home» , «alice» , «Documents» , «example.txt» );
?>

For my part I’ll continue to use this constant because it seems more future safe and flexible, even if Windows installations currently convert the paths magically. Not that syntax aesthetics matter but I think it can be made to look attractive:

= join ( DIRECTORY_SEPARATOR , array( ‘root’ , ‘lib’ , ‘file.php’ );
?>

class RegisterController extends Controller <
/*
|—————————————————————————
| Register Controller
|—————————————————————————
|
| This controller handles the registration of new users as well as their
| validation and creation. By default this controller uses a trait to
| provide this functionality without requiring any additional code.
|
*/

/**
* Where to redirect users after registration.
*
* @var string
*/
protected $redirectTo = ‘/home’ ;

/**
* Create a new controller instance.
*
* @return void
*/
public function __construct ()
<
$this -> middleware ( ‘guest’ );
>

/**
* Get a validator for an incoming registration request.
*
* @param array $data
* @return IlluminateContractsValidationValidator
*/
protected function validator (array $data )
<
return Validator :: make ( $data , [
‘name’ => ‘required|string|max:255’ ,
’email’ => ‘required|string|email|max:255|unique:users’ ,
‘password’ => ‘required|string|min:6|confirmed’ ,
]);
>

/**
* Create a new user instance after a valid registration.
*
* @param array $data
* @return AppUser
*/
protected function create (array $data )
<
return User :: create ([
‘name’ => $data [ ‘name’ ],
’email’ => $data [ ’email’ ],
‘password’ => bcrypt ( $data [ ‘password’ ]),
]);
>
>
?>

Читать еще:  Php change dir

Result:

While debugging, this function return error number and it’s difficult to remember all errors codes, so I think it’s should be there.

([
‘PREG_NO_ERROR’ => PREG_NO_ERROR ,
‘PREG_INTERNAL_ERROR’ => PREG_INTERNAL_ERROR ,
‘PREG_BACKTRACK_LIMIT_ERROR’ => PREG_BACKTRACK_LIMIT_ERROR ,
‘PREG_RECURSION_LIMIT_ERROR’ => PREG_RECURSION_LIMIT_ERROR ,
‘PREG_BAD_UTF8_ERROR’ => PREG_BAD_UTF8_ERROR ,
‘PREG_BAD_UTF8_OFFSET_ERROR’ => PREG_BAD_UTF8_OFFSET_ERROR ,
]);
?>

Result:

Array
(
[PREG_NO_ERROR] => 0
[PREG_INTERNAL_ERROR] => 1
[PREG_BACKTRACK_LIMIT_ERROR] => 2
[PREG_RECURSION_LIMIT_ERROR] => 3
[PREG_BAD_UTF8_ERROR] => 4
[PREG_BAD_UTF8_OFFSET_ERROR] => 5
)

Ссылка на основную публикацию
Adblock
detector