SlideShare a Scribd company logo
CodeIgniter Helper Functions
Jamshid Hashimi
Trainer, Cresco Solution
http://www.jamshidhashimi.com
jamshid@netlinks.af
@jamshidhashimi
ajamshidhashimi
Afghanistan Workforce
Development Program
Agenda
• Array Helper
• Directory Helper
• Download Helper
• Email Helper
• File Helper
• Form Helper
• HTML Helper
• Text Helper
• URL Helper
Array Helper
• The Array Helper file contains functions that assist in
working with arrays.
• $this->load->helper('array');
– Loading helper
• element()
– Lets you fetch an item from an array.
• random_element()
– Takes an array as input and returns a random element
from it.
• elements()
– Lets you fetch a number of items from an array.
Directory Helper
• The Directory Helper file contains functions
that assist in working with directories.
• $this->load->helper('directory');
– Loading helper
• directory_map('source directory')
– This function reads the directory path specified in
the first parameter and builds an array
representation of it and all its contained files.
Download Helper
• The Download Helper lets you download data to
your desktop.
• $this->load->helper('download');
– Loading the helper
• force_download('filename', 'data')
– Generates server headers which force data to be
downloaded to your desktop. Useful with file
downloads. The first parameter is the name you want
the downloaded file to be named, the second
parameter is the file data.
Email Helper
• The Email Helper provides some assistive
functions for working with Email.
• $this->load->helper('email');
– Loading helper
• valid_email('email')
– Checks if an email is a correctly formatted email.
Note that is doesn't actually prove the email will
recieve mail, simply that it is a validly formed
address.
File Helper
• The File Helper file contains functions that assist in working
with files.
• $this->load->helper('file');
– Loading helper
• read_file('path')
– Returns the data contained in the file specified in the path.
• write_file('path', $data)
– Writes data to the file specified in the path. If the file does not
exist the function will create it.
• delete_files('path')
– Deletes ALL files contained in the supplied path.
– If the second parameter is set to true, any directories contained
within the supplied root path will be deleted as well.
File Helper
• get_filenames('path/to/directory/')
– Takes a server path as input and returns an array
containing the names of all files contained within it.
• get_dir_file_info('path/to/directory/', $top_level
_only = TRUE)
– Reads the specified directory and builds an array
containing the filenames, filesize, dates, and
permissions.
• get_file_info('path/to/file', $file_information)
– Given a file and path, returns the
name, path, size, date modified.
File Helper
• get_mime_by_extension('file')
– Translates a file extension into a mime type based on
config/mimes.php.
• symbolic_permissions($perms)
– Takes numeric permissions (such as is returned by
fileperms() and returns standard symbolic notation of
file permissions.
• octal_permissions($perms)
– Takes numeric permissions (such as is returned by
fileperms() and returns a three character octal
notation of file permissions.
Form Helper
• The Form Helper file contains functions that assist in
working with forms.
• $this->load->helper('form');
– Loading Helper
• form_open()
– Creates an opening form tag with a base URL built from your
config preferences.
– $attributes = array('class' => 'email', 'id' => 'myform');
– $hidden = array('username' => 'Joe', 'member_id' => '234');
• form_open_multipart()
– This function is absolutely identical to the form_open() tag
above except that it adds a multipart attribute, which is
necessary if you would like to use the form to upload files with.
Form Helper
• form_hidden()
– Lets you generate hidden input fields.
• form_input()
– Lets you generate a standard text input field.
• form_password()
• form_upload()
• form_textarea()
• form_dropdown()
– Lets you create a standard drop-down field.
• form_checkbox()
– Lets you generate a checkbox field.
• form_radio()
• form_submit()
• form_reset()
• form_button()
• form_close()
HTML Helper
• The HTML Helper file contains functions that assist in working with HTML.
• $this->load->helper('html');
– Loading helper
• br()
– Generates line break tags (<br />) based on the number you submit.
• heading()
– Lets you create HTML <h1> tags. The first parameter will contain the data, the
second the size of the heading.
• img()
– Lets you create HTML <img /> tags. The first parameter contains the image
source.
• nbs()
– Generates non-breaking spaces (&nbsp;) based on the number you submit.
Text Helper
• The Text Helper file contains functions that assist in working with
text.
• $this->load->helper('text');
– Loading helper
• word_limiter()
– Truncates a string to the number of words specified.
• character_limiter()
– Truncates a string to the number of characters specified.
• highlight_code()
– Colorizes a string of code (PHP, HTML, etc.).
• word_wrap()
– Wraps text at the specified character count while maintaining
complete words.
URL Helper
• The URL Helper file contains functions that assist in working with URLs.
• $this->load->helper('url');
– Loading helper
• site_url()
– Returns your site URL, as specified in your config file.
• base_url()
– Returns your site base URL, as specified in your config file.
• current_url()
– Returns the full URL (including segments) of the page being currently viewed.
• uri_string()
– Returns the URI segments of any page that contains this function.
• index_page()
– Returns your site "index" page, as specified in your config file.
URL Helper
• anchor()
– Creates a standard HTML anchor link based on your local site
URL
• anchor_popup()
– Nearly identical to the anchor() function except that it opens the
URL in a new window.
• mailto()
– Creates a standard HTML email link.
• url_title()
– Takes a string as input and creates a human-friendly URL string.
• redirect()
– Does a "header redirect" to the URI specified.
DEMO
QUESTIONS?

More Related Content

What's hot

Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling
Ahmed El-Arabawy
 
File Handling
File HandlingFile Handling
File Handling
Waqar Ali
 
InfiniFlux collector
InfiniFlux collectorInfiniFlux collector
InfiniFlux collector
InfiniFlux
 
Php File Upload
Php File UploadPhp File Upload
Php File Upload
Hiroaki Kawai
 
03 browsing the filesystem
03 browsing the filesystem03 browsing the filesystem
03 browsing the filesystem
Shay Cohen
 
05 File Handling Upload Mysql
05 File Handling Upload Mysql05 File Handling Upload Mysql
05 File Handling Upload Mysql
Geshan Manandhar
 
Synapse india reviews on php website development
Synapse india reviews on php website developmentSynapse india reviews on php website development
Synapse india reviews on php website development
saritasingh19866
 
Php file upload, cookies & session
Php file upload, cookies & sessionPhp file upload, cookies & session
Php file upload, cookies & sessionJamshid Hashimi
 
Consuming Libraries with CMake
Consuming Libraries with CMakeConsuming Libraries with CMake
Consuming Libraries with CMake
Richard Thomson
 
Course 102: Lecture 17: Process Monitoring
Course 102: Lecture 17: Process Monitoring Course 102: Lecture 17: Process Monitoring
Course 102: Lecture 17: Process Monitoring
Ahmed El-Arabawy
 
Android - Data Storage
Android - Data StorageAndroid - Data Storage
Android - Data Storage
MingHo Chang
 
Devtools cheatsheet
Devtools cheatsheetDevtools cheatsheet
Devtools cheatsheet
Dr. Volkan OBAN
 
Strings in c plus plus
Strings in c plus plusStrings in c plus plus
Strings in c plus plus
Naveed Jamali
 
Persistences
PersistencesPersistences
Persistences
Training Guide
 
intro unix/linux 11
intro unix/linux 11intro unix/linux 11
intro unix/linux 11
duquoi
 
Tutorial on developing a Solr search component plugin
Tutorial on developing a Solr search component pluginTutorial on developing a Solr search component plugin
Tutorial on developing a Solr search component plugin
searchbox-com
 
Android datastorage
Android datastorageAndroid datastorage
Android datastorageKrazy Koder
 

What's hot (20)

Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling Course 102: Lecture 12: Basic Text Handling
Course 102: Lecture 12: Basic Text Handling
 
File Handling
File HandlingFile Handling
File Handling
 
InfiniFlux collector
InfiniFlux collectorInfiniFlux collector
InfiniFlux collector
 
rtwerewr
rtwerewrrtwerewr
rtwerewr
 
Php File Upload
Php File UploadPhp File Upload
Php File Upload
 
03 browsing the filesystem
03 browsing the filesystem03 browsing the filesystem
03 browsing the filesystem
 
05 File Handling Upload Mysql
05 File Handling Upload Mysql05 File Handling Upload Mysql
05 File Handling Upload Mysql
 
Synapse india reviews on php website development
Synapse india reviews on php website developmentSynapse india reviews on php website development
Synapse india reviews on php website development
 
Php file upload, cookies & session
Php file upload, cookies & sessionPhp file upload, cookies & session
Php file upload, cookies & session
 
Consuming Libraries with CMake
Consuming Libraries with CMakeConsuming Libraries with CMake
Consuming Libraries with CMake
 
slide on DNS
slide on DNSslide on DNS
slide on DNS
 
Course 102: Lecture 17: Process Monitoring
Course 102: Lecture 17: Process Monitoring Course 102: Lecture 17: Process Monitoring
Course 102: Lecture 17: Process Monitoring
 
Android - Data Storage
Android - Data StorageAndroid - Data Storage
Android - Data Storage
 
DNS Presentation
DNS PresentationDNS Presentation
DNS Presentation
 
Devtools cheatsheet
Devtools cheatsheetDevtools cheatsheet
Devtools cheatsheet
 
Strings in c plus plus
Strings in c plus plusStrings in c plus plus
Strings in c plus plus
 
Persistences
PersistencesPersistences
Persistences
 
intro unix/linux 11
intro unix/linux 11intro unix/linux 11
intro unix/linux 11
 
Tutorial on developing a Solr search component plugin
Tutorial on developing a Solr search component pluginTutorial on developing a Solr search component plugin
Tutorial on developing a Solr search component plugin
 
Android datastorage
Android datastorageAndroid datastorage
Android datastorage
 

Similar to CodeIgniter Helper Functions

Aggregate.pptx
Aggregate.pptxAggregate.pptx
Aggregate.pptx
Ramakrishna Reddy Bijjam
 
Automating Content Import
Automating Content ImportAutomating Content Import
Automating Content Import
David Lippman
 
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...Peter Keane
 
Advance Mobile Application Development class 02-B
Advance Mobile Application Development class 02-BAdvance Mobile Application Development class 02-B
Advance Mobile Application Development class 02-B
Dr. Mazin Mohamed alkathiri
 
File Handlingb in java. A brief presentation on file handling
File Handlingb in java. A brief presentation on file handlingFile Handlingb in java. A brief presentation on file handling
File Handlingb in java. A brief presentation on file handling
abdulsamadbrohi461
 
Intro To C++ - Class #21: Files
Intro To C++ - Class #21: FilesIntro To C++ - Class #21: Files
Intro To C++ - Class #21: Files
Blue Elephant Consulting
 
File Handling Btech computer science and engineering ppt
File Handling Btech computer science and engineering pptFile Handling Btech computer science and engineering ppt
File Handling Btech computer science and engineering ppt
pinuadarsh04
 
What is new in CFEngine 3.6
What is new in CFEngine 3.6What is new in CFEngine 3.6
What is new in CFEngine 3.6
Jonathan Clarke
 
What is new in CFEngine 3.6
What is new in CFEngine 3.6What is new in CFEngine 3.6
What is new in CFEngine 3.6
RUDDER
 
Hadoop 20111117
Hadoop 20111117Hadoop 20111117
Hadoop 20111117exsuns
 
Files and streams
Files and streamsFiles and streams
Files and streams
Pranali Chaudhari
 
07 darwino rest services
07   darwino rest services07   darwino rest services
07 darwino rest services
darwinodb
 
Postgresql Database Administration Basic - Day2
Postgresql  Database Administration Basic  - Day2Postgresql  Database Administration Basic  - Day2
Postgresql Database Administration Basic - Day2
PoguttuezhiniVP
 
Course 102: Lecture 24: Archiving and Compression of Files
Course 102: Lecture 24: Archiving and Compression of Files Course 102: Lecture 24: Archiving and Compression of Files
Course 102: Lecture 24: Archiving and Compression of Files
Ahmed El-Arabawy
 
php fundamental
php fundamentalphp fundamental
php fundamental
zalatarunk
 
Php introduction with history of php
Php introduction with history of phpPhp introduction with history of php
Php introduction with history of phppooja bhandari
 
9780538745840 ppt ch05
9780538745840 ppt ch059780538745840 ppt ch05
9780538745840 ppt ch05
Terry Yoast
 

Similar to CodeIgniter Helper Functions (20)

Helberg acl-final
Helberg acl-finalHelberg acl-final
Helberg acl-final
 
Files nts
Files ntsFiles nts
Files nts
 
Aggregate.pptx
Aggregate.pptxAggregate.pptx
Aggregate.pptx
 
Automating Content Import
Automating Content ImportAutomating Content Import
Automating Content Import
 
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...
The Role of Atom/AtomPub in Digital Archive Services at The University of Tex...
 
Advance Mobile Application Development class 02-B
Advance Mobile Application Development class 02-BAdvance Mobile Application Development class 02-B
Advance Mobile Application Development class 02-B
 
File Handlingb in java. A brief presentation on file handling
File Handlingb in java. A brief presentation on file handlingFile Handlingb in java. A brief presentation on file handling
File Handlingb in java. A brief presentation on file handling
 
Intro To C++ - Class #21: Files
Intro To C++ - Class #21: FilesIntro To C++ - Class #21: Files
Intro To C++ - Class #21: Files
 
File Handling Btech computer science and engineering ppt
File Handling Btech computer science and engineering pptFile Handling Btech computer science and engineering ppt
File Handling Btech computer science and engineering ppt
 
What is new in CFEngine 3.6
What is new in CFEngine 3.6What is new in CFEngine 3.6
What is new in CFEngine 3.6
 
What is new in CFEngine 3.6
What is new in CFEngine 3.6What is new in CFEngine 3.6
What is new in CFEngine 3.6
 
Hadoop 20111117
Hadoop 20111117Hadoop 20111117
Hadoop 20111117
 
Files and streams
Files and streamsFiles and streams
Files and streams
 
07 darwino rest services
07   darwino rest services07   darwino rest services
07 darwino rest services
 
Postgresql Database Administration Basic - Day2
Postgresql  Database Administration Basic  - Day2Postgresql  Database Administration Basic  - Day2
Postgresql Database Administration Basic - Day2
 
Course 102: Lecture 24: Archiving and Compression of Files
Course 102: Lecture 24: Archiving and Compression of Files Course 102: Lecture 24: Archiving and Compression of Files
Course 102: Lecture 24: Archiving and Compression of Files
 
php fundamental
php fundamentalphp fundamental
php fundamental
 
php
phpphp
php
 
Php introduction with history of php
Php introduction with history of phpPhp introduction with history of php
Php introduction with history of php
 
9780538745840 ppt ch05
9780538745840 ppt ch059780538745840 ppt ch05
9780538745840 ppt ch05
 

More from Jamshid Hashimi

Week 2: Getting Your Hands Dirty – Part 2
Week 2: Getting Your Hands Dirty – Part 2Week 2: Getting Your Hands Dirty – Part 2
Week 2: Getting Your Hands Dirty – Part 2
Jamshid Hashimi
 
Week 1: Getting Your Hands Dirty - Part 1
Week 1: Getting Your Hands Dirty - Part 1Week 1: Getting Your Hands Dirty - Part 1
Week 1: Getting Your Hands Dirty - Part 1
Jamshid Hashimi
 
Introduction to C# - Week 0
Introduction to C# - Week 0Introduction to C# - Week 0
Introduction to C# - Week 0
Jamshid Hashimi
 
RIST - Research Institute for Science and Technology
RIST - Research Institute for Science and TechnologyRIST - Research Institute for Science and Technology
RIST - Research Institute for Science and Technology
Jamshid Hashimi
 
How Coding Can Make Your Life Better
How Coding Can Make Your Life BetterHow Coding Can Make Your Life Better
How Coding Can Make Your Life Better
Jamshid Hashimi
 
Mobile Vision
Mobile VisionMobile Vision
Mobile Vision
Jamshid Hashimi
 
Tips for Writing Better Code
Tips for Writing Better CodeTips for Writing Better Code
Tips for Writing Better Code
Jamshid Hashimi
 
Launch Your Local Blog & Social Media Integration
Launch Your Local Blog & Social Media IntegrationLaunch Your Local Blog & Social Media Integration
Launch Your Local Blog & Social Media Integration
Jamshid Hashimi
 
Customizing Your Blog 2
Customizing Your Blog 2Customizing Your Blog 2
Customizing Your Blog 2
Jamshid Hashimi
 
Customizing Your Blog 1
Customizing Your Blog 1Customizing Your Blog 1
Customizing Your Blog 1
Jamshid Hashimi
 
Introduction to Blogging
Introduction to BloggingIntroduction to Blogging
Introduction to Blogging
Jamshid Hashimi
 
Introduction to Wordpress
Introduction to WordpressIntroduction to Wordpress
Introduction to Wordpress
Jamshid Hashimi
 
CodeIgniter Class Reference
CodeIgniter Class ReferenceCodeIgniter Class Reference
CodeIgniter Class Reference
Jamshid Hashimi
 
Managing Applications in CodeIgniter
Managing Applications in CodeIgniterManaging Applications in CodeIgniter
Managing Applications in CodeIgniterJamshid Hashimi
 
CodeIgniter Practice
CodeIgniter PracticeCodeIgniter Practice
CodeIgniter Practice
Jamshid Hashimi
 
PHP Frameworks & Introduction to CodeIgniter
PHP Frameworks & Introduction to CodeIgniterPHP Frameworks & Introduction to CodeIgniter
PHP Frameworks & Introduction to CodeIgniterJamshid Hashimi
 

More from Jamshid Hashimi (20)

Week 2: Getting Your Hands Dirty – Part 2
Week 2: Getting Your Hands Dirty – Part 2Week 2: Getting Your Hands Dirty – Part 2
Week 2: Getting Your Hands Dirty – Part 2
 
Week 1: Getting Your Hands Dirty - Part 1
Week 1: Getting Your Hands Dirty - Part 1Week 1: Getting Your Hands Dirty - Part 1
Week 1: Getting Your Hands Dirty - Part 1
 
Introduction to C# - Week 0
Introduction to C# - Week 0Introduction to C# - Week 0
Introduction to C# - Week 0
 
RIST - Research Institute for Science and Technology
RIST - Research Institute for Science and TechnologyRIST - Research Institute for Science and Technology
RIST - Research Institute for Science and Technology
 
How Coding Can Make Your Life Better
How Coding Can Make Your Life BetterHow Coding Can Make Your Life Better
How Coding Can Make Your Life Better
 
Mobile Vision
Mobile VisionMobile Vision
Mobile Vision
 
Tips for Writing Better Code
Tips for Writing Better CodeTips for Writing Better Code
Tips for Writing Better Code
 
Launch Your Local Blog & Social Media Integration
Launch Your Local Blog & Social Media IntegrationLaunch Your Local Blog & Social Media Integration
Launch Your Local Blog & Social Media Integration
 
Customizing Your Blog 2
Customizing Your Blog 2Customizing Your Blog 2
Customizing Your Blog 2
 
Customizing Your Blog 1
Customizing Your Blog 1Customizing Your Blog 1
Customizing Your Blog 1
 
Introduction to Blogging
Introduction to BloggingIntroduction to Blogging
Introduction to Blogging
 
Introduction to Wordpress
Introduction to WordpressIntroduction to Wordpress
Introduction to Wordpress
 
CodeIgniter Class Reference
CodeIgniter Class ReferenceCodeIgniter Class Reference
CodeIgniter Class Reference
 
Managing Applications in CodeIgniter
Managing Applications in CodeIgniterManaging Applications in CodeIgniter
Managing Applications in CodeIgniter
 
CodeIgniter Practice
CodeIgniter PracticeCodeIgniter Practice
CodeIgniter Practice
 
CodeIgniter & MVC
CodeIgniter & MVCCodeIgniter & MVC
CodeIgniter & MVC
 
PHP Frameworks & Introduction to CodeIgniter
PHP Frameworks & Introduction to CodeIgniterPHP Frameworks & Introduction to CodeIgniter
PHP Frameworks & Introduction to CodeIgniter
 
Exception & Database
Exception & DatabaseException & Database
Exception & Database
 
MySQL Record Operations
MySQL Record OperationsMySQL Record Operations
MySQL Record Operations
 
MySQL JOIN & UNION
MySQL JOIN & UNIONMySQL JOIN & UNION
MySQL JOIN & UNION
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Ramesh Iyer
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 

CodeIgniter Helper Functions

  • 1. CodeIgniter Helper Functions Jamshid Hashimi Trainer, Cresco Solution http://www.jamshidhashimi.com jamshid@netlinks.af @jamshidhashimi ajamshidhashimi Afghanistan Workforce Development Program
  • 2. Agenda • Array Helper • Directory Helper • Download Helper • Email Helper • File Helper • Form Helper • HTML Helper • Text Helper • URL Helper
  • 3. Array Helper • The Array Helper file contains functions that assist in working with arrays. • $this->load->helper('array'); – Loading helper • element() – Lets you fetch an item from an array. • random_element() – Takes an array as input and returns a random element from it. • elements() – Lets you fetch a number of items from an array.
  • 4. Directory Helper • The Directory Helper file contains functions that assist in working with directories. • $this->load->helper('directory'); – Loading helper • directory_map('source directory') – This function reads the directory path specified in the first parameter and builds an array representation of it and all its contained files.
  • 5. Download Helper • The Download Helper lets you download data to your desktop. • $this->load->helper('download'); – Loading the helper • force_download('filename', 'data') – Generates server headers which force data to be downloaded to your desktop. Useful with file downloads. The first parameter is the name you want the downloaded file to be named, the second parameter is the file data.
  • 6. Email Helper • The Email Helper provides some assistive functions for working with Email. • $this->load->helper('email'); – Loading helper • valid_email('email') – Checks if an email is a correctly formatted email. Note that is doesn't actually prove the email will recieve mail, simply that it is a validly formed address.
  • 7. File Helper • The File Helper file contains functions that assist in working with files. • $this->load->helper('file'); – Loading helper • read_file('path') – Returns the data contained in the file specified in the path. • write_file('path', $data) – Writes data to the file specified in the path. If the file does not exist the function will create it. • delete_files('path') – Deletes ALL files contained in the supplied path. – If the second parameter is set to true, any directories contained within the supplied root path will be deleted as well.
  • 8. File Helper • get_filenames('path/to/directory/') – Takes a server path as input and returns an array containing the names of all files contained within it. • get_dir_file_info('path/to/directory/', $top_level _only = TRUE) – Reads the specified directory and builds an array containing the filenames, filesize, dates, and permissions. • get_file_info('path/to/file', $file_information) – Given a file and path, returns the name, path, size, date modified.
  • 9. File Helper • get_mime_by_extension('file') – Translates a file extension into a mime type based on config/mimes.php. • symbolic_permissions($perms) – Takes numeric permissions (such as is returned by fileperms() and returns standard symbolic notation of file permissions. • octal_permissions($perms) – Takes numeric permissions (such as is returned by fileperms() and returns a three character octal notation of file permissions.
  • 10. Form Helper • The Form Helper file contains functions that assist in working with forms. • $this->load->helper('form'); – Loading Helper • form_open() – Creates an opening form tag with a base URL built from your config preferences. – $attributes = array('class' => 'email', 'id' => 'myform'); – $hidden = array('username' => 'Joe', 'member_id' => '234'); • form_open_multipart() – This function is absolutely identical to the form_open() tag above except that it adds a multipart attribute, which is necessary if you would like to use the form to upload files with.
  • 11. Form Helper • form_hidden() – Lets you generate hidden input fields. • form_input() – Lets you generate a standard text input field. • form_password() • form_upload() • form_textarea() • form_dropdown() – Lets you create a standard drop-down field. • form_checkbox() – Lets you generate a checkbox field. • form_radio() • form_submit() • form_reset() • form_button() • form_close()
  • 12. HTML Helper • The HTML Helper file contains functions that assist in working with HTML. • $this->load->helper('html'); – Loading helper • br() – Generates line break tags (<br />) based on the number you submit. • heading() – Lets you create HTML <h1> tags. The first parameter will contain the data, the second the size of the heading. • img() – Lets you create HTML <img /> tags. The first parameter contains the image source. • nbs() – Generates non-breaking spaces (&nbsp;) based on the number you submit.
  • 13. Text Helper • The Text Helper file contains functions that assist in working with text. • $this->load->helper('text'); – Loading helper • word_limiter() – Truncates a string to the number of words specified. • character_limiter() – Truncates a string to the number of characters specified. • highlight_code() – Colorizes a string of code (PHP, HTML, etc.). • word_wrap() – Wraps text at the specified character count while maintaining complete words.
  • 14. URL Helper • The URL Helper file contains functions that assist in working with URLs. • $this->load->helper('url'); – Loading helper • site_url() – Returns your site URL, as specified in your config file. • base_url() – Returns your site base URL, as specified in your config file. • current_url() – Returns the full URL (including segments) of the page being currently viewed. • uri_string() – Returns the URI segments of any page that contains this function. • index_page() – Returns your site "index" page, as specified in your config file.
  • 15. URL Helper • anchor() – Creates a standard HTML anchor link based on your local site URL • anchor_popup() – Nearly identical to the anchor() function except that it opens the URL in a new window. • mailto() – Creates a standard HTML email link. • url_title() – Takes a string as input and creates a human-friendly URL string. • redirect() – Does a "header redirect" to the URI specified.
  • 16. DEMO