remove hours if hours=0

input from excel file
0:00:02
0:50:04
0:04:08
1:20:30
0:00:09

remove
hours and :
if hours = 0

want output:
00:02
50:04
04:08
1:20:30
00:09
LVL 1
rgb192Asked:
Who is Participating?
 
TvMptConnect With a Mentor Commented:
echo preg_replace('/(^(0:))/m',' ',$sourcestring);

Open in new window

0
 
mcnuteCommented:
you could do,

if date('H', time()) == 0 
echo date('H:i', time());

Open in new window

0
 
ramyajanarthananCommented:
I hope you import files to your db from the excel sheets.Please may i know your requirement clearly.
0
Free Tool: SSL Checker

Scans your site and returns information about your SSL implementation and certificate. Helpful for debugging and validating your SSL configuration.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

 
Robert SaylorSenior DeveloperCommented:
It's best to convert the time to seconds then use a math equation to see if it is over 59 mins in seconds. Then you could use an else to display the H or not.
0
 
Ray PaseurCommented:
The standard methods of handling date and time values are given in this article.  Se the parts about Time Without Date and Practical Application #3.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html

With the test data posted here, I think TvMpt has an accurate solution.  But I think my instincts would lead me to keep the hours, even if they are zero.
0
 
rgb192Author Commented:
i did not understand the time() command (where to put variable)

so this preg_replace worked

thanks
0
 
Ray PaseurCommented:
You do not need to understand the time() command.  The time() command is not the right tool to use.  This article explains the way to do date and time format conversions.
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html

The quality of test data is usually more important than the programming.  You might want to run this to see what output you will get.

<?php // RAY_temp_rgb192.php
error_reporting(E_ALL);
echo '<pre>';

// TEST DATA WITH AN OUTLIER
$arr = array
( '0:00:02'
, '0:50:04'
, '0:04:08'
, '1:20:30'
, '0:00:09'
, '00:00:09'
)
;

// TRY THE REGEX
foreach ($arr as $sourcestring)
{
    echo PHP_EOL;
    echo $sourcestring;
    echo ' => ';
    echo preg_replace('/(^(0:))/m',' ',$sourcestring);
}

Open in new window

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.