Here is my cheat sheet I created along my learning journey. If you have any recommendations (addition/subtraction) let me know. <?php //Naming convention $first_name = 'Mike'. // all lower case with underscore separators function updateProduct() // camelCase class ProductItem // StudlyCaps const ACCESS_KEY = '123abc'; // all upper case with underscore separators //output echo 'Hello World'; //variable declaration $name = 'Mike'; //string $isActive = true; //boolean $number = 25; //integer $amount = 99.95; //float //string concat echo 'Hello ' . $name; //string escape characters \n new line \t tab \\ backslash echo "Hello Mike\nHello David"; //string interpolation echo "Hello $name"; //string number of characters echo strlen($name); // Remove space(s) before and after echo trim($text) // Convert to lowercase / uppercase echo strtolower($email); echo strtoupper($name); // Converts the first character to uppercase echo ucfirst($name); // 'Mike' // Replace text a by text b in $text echo str_replace('a', 'b', $text); // String Contains (PHP 8) echo str_contains($name, 'ke') # true // Check if numeric echo is_numeric('59.99'); # true // Round a number echo(round(0.80)); // returns 1 echo(round(0.49)); // returns 0 // Random number echo(rand(10, 100)); # 89 // Ternary operator (true : false) echo $valid ? 'user valid' : 'user not valid'; //Null Coalesce Operator echo $name ?? 'Mike'; //output 'Mike' if $name is null //Null Coalesce Assignment $name ??= 'Mike'; // Null Safe Operator (PHP 8) will return null if one ? is null echo $user?->profile?->activate(); // Null Safe + Null Coalesce (if null will return 'No user profile') echo $user?->profile?->activate() ?? 'Not applicable'; //Spaceship operator return -1 0 1 $names = ['Mike', 'Paul', 'John'] usort($names, function($a, $b) { return $a <=> $b; } // ['John', 'Mike', 'Paul'] // print variables contents (for debug) var_dump($names); print_r($names); // terminate the current script die(); //Conditionals If ($condition == 10) { echo 'condition 10' } elseif ($condition == 5) { echo 'condition 5' } else { echo 'all other conditions' } //Comparaison operation == // equal no type check === // equal with type check != //not equal || //or && //and > //greater than < //less than // Match Expression (PHP 8) $type = match($color) { 'red' => 'danger', 'yellow', 'orange' => 'warning', 'green' => 'success', default => 'Unknown' }; //for loop for ($i = 0; $i < 20; $i++) { echo "i value = " . i; } //while loop $number = 1; while ($number < 10) { echo 'value : ' . $number ; $number += 1; } //do while $number = 1; do { echo 'value : ' . $number ; $number += 1; } while ($number < 10); //Array declaration $names = ['Mike', 'Peter', 'Shawn', 'John']; //add to array $names[] = 'Micheal'; //Spread Operator $names = ['Mike', 'Peter', 'Paul']; $people = ['John', ...$names]; // ['John', 'Mike', 'Peter', 'Paul'] //Remove array entry: unset($names['Peter']); //Array to string echo implode(', ', $names) //output Mike, Shawn, John, Micheal // String to Array echo explode(',', $text); // ['Mike', 'Shawn', 'John'] // Direct access echo $name[1] //output Peter //loop for each array entry foreach($names as $name) { echo 'Hello ' . $name; } // loop break / continue $values = ['one', 'two', 'three']; foreach ($values as $value) { if ($value === 'two') { break; // exit loop } elseif ($value === 'three') { continue; // next loop iteration } } // Number of items in a Array echo count($names); //Associative array: $person = ['age' => 45, 'genre' => 'men']; //Add to ass. array: $person['name'] = 'Mike'; //loop ass. array key => value: foreach($names as $key => $value) { echo $key . ' : ' . $value } // Check if a specific key exist echo array_key_exist('age', $person); // Return keys echo array_keys($person); // ['age', 'genre'] // Return values echo array_values($person) // [45, 'men'] //Array filter (return a filtered array) $filtered_people = array_filter($people, function ($person) { return $names->active; }) // Array map (return transform array): $only_names = array_map(function($person) { return [‘name’ => $person->name]; }, $people) //function declararion function name($first_name, $last_name = 'default value') { puts $first_name . ' ' . $last_name } //function call name('Mike', 'Taylor'); //function call with named parameters (PHP 8) name(first_name: 'Mike', last_name: 'Taylor'); // order can change //function variables params function name(...$params) { return $params[0] . “ “ . params[1]; } // Closure function Route::get('/', function () { return view('welcome'); }); // Arrow functions Route::get('/', fn () => return view('welcome'); //File read $file = fopen("test.txt", "r"); //Output lines until EOF is reached while(! feof($file)) { $line = fgets($file); echo $line. "<br>"; } fclose($file); // File write $file = fopen('export.csv', 'a'); $array = ['name' => 'Mike', 'age' => 45]; //Write key name as csv header fputcsv($file, array_keys($array[0])); //Write lines (format as csv) foreach ($array as $row) { fputcsv($file, $row); } fclose($file); //Throw Error if (someCondition) { throw new Exception('Data format error'); } //Catch the Error try { $db->checkData($data) } catch (Exception as $e) echo $e->getMessage(); } //class declaration class Person { } // object instantiation $person = new Person //class properties and constructor class Person { protected $first_name; protected $last_name; public function __construc($first_name, $last_name) { $this->first_name = $first_name; $this->last_name = $last_name } // Constructor Property Promotion (PHP 8) class Person { public function __construc(protected $first_name, protected $last_name) { } //static constructor public static function create(...$params) { return new self($params) } $person = Person::create(‘Mike’, ‘Taylor’); // class inheritance class Customer extends Person { public function name() { parent::name(); echo 'Override method'; } } // Static Method class greeting { public static function welcome() { echo "Hello World!"; } } // Call static method greeting::welcome(); // Static method internal call class greeting { public static function welcome() { echo "Hello World!"; } public function __construct() { self::welcome(); } } new greeting(); // Interface interface Animal { public function makeSound(); } class Cat implements Animal { public function makeSound() { echo "Meow"; } } $animal = new Cat(); $animal->makeSound(); //Trait (mix-in) trait HelloWorld { public function sayHello() { echo 'Hello World!'; } } class Greetings { use HelloWorld; } $object = new Greetings(); $object->sayHello();
相关博文
My beloved PHP cheat sheet