1/62
Flashcard deck covering fundamental concepts in PHP Object-Oriented Programming, Information Management & Relational Database Design, and Data Structures & Algorithms.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
PHP
A popular server-side (back-end) scripting language embedded inside HTML and executed on a web server.
echo
An output construct in PHP used to print data to the screen.
readline()
A PHP function that reads a single line of input from the Command Line Interface (CLI).
fgets(STDIN)
A PHP function used to read input from standard input, often combined with trim() to remove trailing newlines.
Indexed Array
An array in PHP that uses numeric indices starting at 0.
Associative Array
An array in PHP that uses named key-value pairs instead of numeric indices.
Object-Oriented Programming (OOP)
A programming paradigm based on the concept of objects that represent real-world entities containing data (attributes/properties) and actions (methods).
Class
A template or blueprint that defines properties and methods for objects.
Object
A concrete instance created from a class blueprint.

Class vs. Object Comparison
A side-by-side comparison illustrating classes as house blueprints and objects as actual constructed houses with assigned attribute values.

Procedural vs. Object-Oriented Programming
A structural comparison contrasting step-by-step procedural functions against modular OOP classes combining data and actions.
Encapsulation
The OOP pillar of keeping data and methods contained inside a class, restricting direct outside access to protect sensitive details.
Abstraction
The OOP pillar of exposing simple interfaces while hiding complex internal implementations.
Inheritance
The OOP pillar enabling a child class to inherit attributes and methods from a parent class while adding its own unique features.
Polymorphism
The OOP pillar allowing different classes to define unique implementations for methods sharing the same name.
public
An access modifier that allows properties or methods to be accessible from anywhere inside or outside the class.
protected
An access modifier that restricts property or method visibility to the declaring class itself and its derived (child) subclasses.
private
An access modifier that restricts access to properties or methods exclusively to the class where they are declared.

Access Modifier Visibility Matrix
A matrix detailing public, protected, and private visibility permissions across inside class, subclass, and outside class contexts.
extends
The PHP keyword used by a derived (child) class to inherit properties and methods from a base (parent) class.
Method Overriding
The technique where a child class redefines an inherited parent method to provide specific behavior.
parent::
The scope resolution syntax in PHP used by a child class to invoke a method implementation from its parent class.
Data (Information Management)
Raw, unorganized facts with no inherent meaning, such as 42 or "Manila".
Information
Processed and structured data that has been given context and meaning.
Knowledge
Information applied with experience and context for decision-making.
Database Management System (DBMS)
An interface software between users/applications and physical storage that provides tools for data definition, manipulation, security, and recovery.
Relational DBMS (RDBMS)
A system that organizes data into tables (relations) with primary and foreign keys while enforcing ACID compliance via SQL.
Degree
The total number of columns or attributes present in a relation.
Cardinality (Relational Model)
The total number of rows or tuples present in a relation.
Domain
The allowable set of values for an attribute in a relational model.
Primary Key (PK)
An attribute or set of attributes that uniquely identifies each tuple in a relation, which cannot contain duplicate or NULL values.
Foreign Key (FK)
An attribute in a table that references a primary key in another relation to establish links between tables.
Candidate Key
Any column or set of columns capable of uniquely identifying a row in a relation.
Composite Key
A primary key composed of two or more combined attributes.
Referential Integrity
Rules ensuring every Foreign Key value matches an existing Primary Key value in the referenced table, preventing orphan records.
Conceptual Design
The database design phase that models business entities, attributes, and relationships independent of a DBMS.
Logical Design
The database design phase that maps conceptual ERDs to relational tables and applies normalization rules.
Physical Design
The database design phase that implements tables, data types, constraints, and indexes inside a specific RDBMS.

Logical vs. Physical ERD Breakdown
A visual breakdown comparing attributes and keys in Logical ERDs against DBMS-specific data types, constraints, and indexes in Physical ERDs.

Advanced ER Modeling Specifications
A summary covering entity participation limits, M:N resolution via associative tables, supertype/subtype entities, and self-referencing recursive relationships.
Associative Table
A junction table used to resolve Many-to-Many (M:N) relationships by converting them into two 1:M relationships.
Recursive Relationship
A relationship where an entity references itself via a self-referencing foreign key.
Data Structure
An arrangement of data combined with specific access rules.
Algorithm
A finite, step-by-step procedure that transforms input into output.
Program
An algorithm and data structure expressed in a programming language.
Abstract Data Type (ADT)
A high-level specification that describes the behavior or contract of a data structure independent of its code implementation.
Finiteness
The property requiring an algorithm to terminate after a limited number of steps for every valid input.
Definiteness
The property requiring each step of an algorithm to be unambiguously and precisely stated.
Effectiveness
The property requiring every step of an algorithm to be basic enough to be executed exactly in finite time.
Big-O Notation
An asymptotic notation representing the upper bound or worst-case complexity ceiling of an algorithm, denoted as O.
Big-Omega Notation
An asymptotic notation representing the lower bound of an algorithm's execution time, denoted as vast Omega.
Big-Theta Notation
An asymptotic notation representing a tight bound where upper and lower complexity bounds match, denoted as vast Theta.
Constant Time
A complexity class where execution time remains identical regardless of input size n, denoted as O(1).
Logarithmic Time
A complexity class where execution time increases by a constant amount as input size n doubles, denoted as O(log(n)).
Linear Time
A complexity class where execution time grows in direct proportion to input size n, denoted as O(n).
Linearithmic Time
A complexity class common in divide-and-conquer algorithms, growing slightly faster than linear time, denoted as O(nlog(n)).
Quadratic Time
A complexity class where execution time quadruples when input size n doubles, denoted as O(n2).

Asymptotic Complexity Step Scale
A comparative chart mapping operation step counts for O(1), O(log(n)), O(n), O(nlog(n)), and O(n2) across inputs n=10, n=1,000, and n=1,000,000.
Dynamic Array
An array structure stored in contiguous memory that resizes automatically when full by allocating a larger memory block and copying elements over.
Amortized Cost
The average time per operation over a worst-case sequence, such as appends in a dynamic array taking O(1) on average despite occasional resizes.
Singly Linked List
A non-contiguous data structure made of nodes containing data and a reference pointer to the next node.
Doubly Linked List
A linked data structure whose nodes contain reference pointers to both next and previous nodes, enabling bidirectional traversal.

Dynamic Array vs. Linked List Matrix
A performance matrix comparing access, insertion, deletion, search complexities, and memory layout between dynamic arrays and linked lists.