Php convert filesizes to bytes kb mb gb
- Category: Personal Home Page
- Hits: 22229
Just a quick note on how to format a given filesize and to reduce the display output to a small string, eg:
196 bytes : displays as => "196 bytes" 12945 bytes : displays as => "12 Kb" 1478515 bytes : displays as => "1 Mb" 8798745455 bytes : displays as => "8 Gb"
Convert seconds to total time in PHP
- Category: Personal Home Page
- Hits: 13346
This is intended for activity/session durations and although I usually get MySQL to do the date/time calculations, there are times when we have to do with PHP. This is the shortest way I know to properly convert seconds into total hours, minutes and seconds (taking into account regional settings and without using a date function).
How?
$total_time =intval(intval($total_seconds)/ 3600).":"; $total_time.=str_pad(intval(($total_seconds/60)%60),2,"0",STR_PAD_LEFT).":"; $total_time.=str_pad(intval($total_seconds%60),2,"0",STR_PAD_LEFT); // yields // 82800 = 23:00:00 // 108000 = 30:00:00On one line:
$total_time=intval(intval($total_seconds)/ 3600).":".str_pad(intval(($total_seconds/60)%60),2,"0",STR_PAD_LEFT).":".str_pad(intval($total_seconds%60),2,"0",STR_PAD_LEFT);
First and Last Entry on a Page using Modulus Remainder
- Category: Personal Home Page
- Hits: 19903
This article is a quick note (so I never spend as long again) in PHP on how to determine when looping through a loop, which entry was first and which was last. This is incredibly useful for pagination.
PHP & MySQL Search Engine
- Category: Personal Home Page
- Hits: 46025
So we want to give a search engine to our users. This sounds really simple, we could try:
$search_term_esc = AddSlashes($search_term); $sql = "SELECT * FROM Content WHERE content_body LIKE '%$search_term_esc%'";Great! Few problems though, multiple terms are not supported; quotation marks and apostrophes may be an issue;
UTF8 Unicode PHP MySQL for International Characters
- Category: Personal Home Page
- Hits: 31020
- Joomla works fine with international characters
- A Module Extension I wrote for Joomla! displayed funny characters.
- The Joomla! articles were displaying the correct characters for that language set.
- I needed to make my extension read data from a MySQL database and display the caracters as intended with UTF8.
I tried enough extensions and forum solutions, and although these changes would have an effect on the module (such as take away accents and convert to ASCII), they weren't what we were looking for.
The quick solution was to make the script run a MySQL command at the start:
SET NAMES 'utf8'Now I need to run this command from within a Joomla! extension using the mysql Joomla! classes, here's how I've used in this script pulling IDs and titles from the a sample table:
Yesterday's time in PHP
- Category: Personal Home Page
- Hits: 8294
$today=date("Y-m-d");
$yesterday = date('Y-m-d', mktime(0, 0, 0, date("m") , date("d") - 1, date("Y")));
Creating a Top 10 chart with less code
- Category: Personal Home Page
- Hits: 22026
I've decided to put something in here as it took me an age to find out how I could do it.
This is when using a MySQL query within a PHP script. The process is used often to do a statistics table or top ten chart of your data (eg. movies, music, etc).
My aim is to do the following:
- retrieve data from a table,
- count the number of times each data exists,
- sort it in reverse order so that the most frequent is at the top of the list
- print out each row with the number of times that particular data appeared in a row
My old method was to:
Outputting PHP files into different file formats
- Category: Personal Home Page
- Hits: 12301
I'm beginning a list as I've just spent an age trying to get PHP output to create a text file. Then my client showed me how she then opens the text file in Excel, so I said we could get the script to do that instead.
PHP to TXT
header('Content-Type: text/plain; charset=utf-8');
header('Content-Disposition: attachment; filename=foo.txt');
echo 'contents of file';
PHP to XLS
$export_file = "my_name.xls";
ob_end_clean();
ini_set('zlib.output_compression','Off');
header('Pragma: public');
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");
header('Last-Modified: '.gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: pre-check=0, post-check=0, max-age=0');
header ("Pragma: no-cache");
header("Expires: 0");
header('Content-Transfer-Encoding: none');
header('Content-Type: application/vnd.ms-excel;');
header("Content-type: application/x-msexcel");
header('Content-Disposition: attachment; filename="'.basename($export_file).'"');

