Php
/
Http
- 1 Basics 5
-
Quotes S
-
Constants S
-
Control structures S
-
Reference S
-
Number systems S
- 2 Variables 4
-
Definition S
-
Variable variable S
-
Exists S
-
Type casting S
- 3 Operators 5
-
Aritmetic S
-
Bitwise S
-
String S
-
Comparison S
-
Logical S
- 4 Function 4
-
Definition S
-
Anonymous S
-
Reference S
-
Variable arguments S
- 5 Array 7
-
Basics S
-
Operations S
-
Create S
-
Search S
-
Modify S
-
Sort S
-
Storage S
- 6 String 9
-
Basics
-
Compare
-
Search
-
Replace
-
Format
-
Regexp
-
Parse
-
Formating
-
Json
- 7 Streams 6
-
File open
-
Read file
-
Read csv
-
File contents
-
Context
-
Ob_start
- 8 Oop 6
-
Object instantiation S
-
Class constructor
-
Interfaces, abstract
-
Resource visibility
-
Class constants
-
Namespaces
- 9 Features 9
-
Autoload
-
Class reflection
-
Magic methods
-
Exceptions S
-
Late static binding
-
Type hinting
-
SPL
-
PHPUNIT
-
PHAR
- 10 Versions 2
-
Php7.4 S
-
Php8.0 S
- 11 Http 4
-
Headers
-
File Uploads
-
Cookies
-
Sessions
- 12 Design Patterns 4
-
Singleton Pattern S
-
Observer Pattern
-
Strategy Pattern
-
Registry
- 13 Modern Php 8
-
Composer S
-
Slim Framework
-
Autoloader
-
Package
-
Releases
-
Generators
-
Dependency Injection
-
Middleware
- 14 Create Framework 7
-
App
-
Http Foundation
-
Front Controller
-
Routing
-
Render Controller
-
Resolver
-
SoC
- 15 Frameworks 4
-
Symfony v5
-
Laravel v8
-
Laminas v3
-
Codeigniter v4
- 16 Composer 5
-
Guzzle
-
Carbon
-
Faker
-
Math
-
Requests
- 17 Symfony 6
-
Routes S
-
Annotations
-
Flex
-
Controllers
-
Doctrine
-
Templating
R
Q
GET & POST
GET and POST are the same from security perspective (use SSL insteed). GET is recommended for pages requiring bookmarking. GET will limit the size and type of data to be send. POST is the only method for uploading files.Encode
To create an url that contains query data, use urlencode(). PHP interpreter automatically decodes data for us
code
$value = "A&B";
echo "http://www.example.com/index.php?data=" . urlencode($value);
// data=A+%26+B
// http://example.org/index.php?list=user&order[by]=column
echo $_GET['order']['by']; // Outputs: column
File Uploads
Enctype='multipart/form-data' Upload checks: error, tmp_name, size, is_uploaded_file Filter and change the file name
copy
<form enctype="multipart/form-data"
action="index.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="50000" />
<input name="filedata" type="file" />
<input type="submit" value="Send file" />
</form>
MAX_FILE_SIZE is almost entirely meaningless, since it sits on the client side.
Use php.ni insteed.
# Maximum size of POST data that PHP will accept.
post_max_size = 8M
# Maximum amount of time each script may spend parsing request data
max_input_time = 60
# Maximum allowed size for uploaded files.
upload_max_filesize = 2M
Once a file is uploaded to the server, PHP stores is in a temporary location.
copy
<form enctype="multipart/form-data"
action="index.php" method="post">
<input name="filedata" type="file" />
<input type="submit" value="Submit" />
</form>
copy
//print_r($_FILES['filedata']);
if(!empty($_FILES['filedata']['tmp_name']) &&
$_FILES['filedata']['error'] === 0 &&
$_FILES['filedata']['size'] > 0){
if (is_uploaded_file($_FILES['filedata']['tmp_name'])) {
// move and rename
}
}
➥ Questions
Last update: 516 days ago