| Server IP : 210.245.233.93 / Your IP : 216.73.216.226 Web Server : Apache/2.2.15 (CentOS) System : Linux webserver2.onesolution.com.hk 2.6.32-754.35.1.el6.x86_64 #1 SMP Sat Nov 7 12:42:14 UTC 2020 x86_64 User : apache ( 48) PHP Version : 5.3.3 Disable Function : exec, shell_exec, system, passthru, popen, proc_open, pcntl_exec MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /var/www/hkosl.com/m.musiccircle/webadmin/ |
Upload File : |
<?php
use Illuminate\Database\Capsule\Manager as DB;
function timestamp($length = 19)
{
return substr(date('Y-m-d H:i:s'), 0, $length);
}
function vdump()
{
print"<pre>";
call_user_func_array('var_dump', func_get_args());
//var_dump($a);
print"</pre>";
}
function print_array($array, $title)
{
echo "<p class='exp_head'>\$$title</p>\n";
echo "<div class='exp_body'>\n";
echo "\t<pre>\n";
print_r($array);
echo "\t</pre>\n";
echo "</div>\n";
}
function is_assoc(array $array = array())
{
if (empty($array)) {
return false;
}
return (bool)count(array_filter(array_keys($array), 'is_string'));
}
function dq_bind_array($query, $binding = array())
{
foreach ($binding as $v) {
$query = preg_replace('/[?]/', "'{$v}'", $query, 1);
}
return $query;
}
function dq_bind_assoc($query, $binding = array())
{
if (sizeof($binding) > 0) {
krsort($binding);
foreach ($binding as $key => $value) {
$query = str_replace("{$key}", "'{$value}'", $query);
}
}
return $query;
}
function dq($bind = true, $die = false, $return = false)
{
$results = DB::getQueryLog();
if ($bind) {
foreach ($results as $k => $result) {
if (is_assoc($result['bindings'])) {
$queries[] = dq_bind_assoc($result['query'], $result['bindings']);
} else {
$queries[] = dq_bind_array($result['query'], $result['bindings']);
}
}
if ($return) {
return $queries;
} else {
vdump($queries);
if ($die) exit();
return;
}
}
if ($return) {
return $results;
} else {
var_dump($results);
if ($die) exit();
}
}
function val_in_array($a, $field)
{
if (is_array($a)) {
return $a[$field];
}
}
// system profiling
function lang_read_db($lang = null)
{
// var_dump(__FUNCTION__);
global $_profile;
global $_translations;
$time_start = microtime(true);
if (empty($lang)) {
$this_langcode = get_langcode();
} else {
$this_langcode = $lang;
}
$sql = "select * from `language` where deleted = ?";
$parameters = array(0);
$temp = bind_pdo($sql, $parameters, "selectall");
// echo bind_pdo($sql, $parameters, "dump");
// var_dump($temp);
foreach ($temp as $t) {
$_translations[$t["name_en"]] = $t["name_" . $this_langcode];
}
$_profile[__FUNCTION__] = number_format(microtime(true) - $time_start, 3);
// var_dump($_translations);
// exit;
}
// lang_read_db();
//
$_profile['lang'] = 0;
function lang($text, $lang = null)
{
// vdump(__FUNCTION__);
global $_profile;
global $_translations;
if (empty($_translations)) {
// lang_read_json();
lang_read_db($lang);
}
$time_start = microtime(true);
$s = false;
if (array_key_exists($text, $_translations)) {
$s = $_translations[$text];
}
$_profile['lang'] += microtime(true) - $time_start;
// return $text;
if ($s) {
return $s;
// return sprintf($s, $args);
}
lang_pending_push($text);
return $text;
// return sprintf($text, $args);
}
function lang_pending_push($text)
{
if (LanguagePending::where('name_en', $text)->count() == 0) {
LanguagePending::create(array(
'name_en' => $text,
));
}
}
function lang_pending_to_lang()
{
vdump(__FUNCTION__);
global $arraylangcode;
$required_fields = array('name_en', 'name_cn');
foreach (LanguagePending::get() as $languagePending) {
$moveToLanguage = true;
foreach ($required_fields as $required_field) {
if (!$languagePending[$required_field]) {
$moveToLanguage = false;
break;
}
}
if ($moveToLanguage) {
if (Language::where('name_en', $languagePending->name_en)->count() == 0) {
//insert
Language::create(array(
'name_en' => $languagePending->name_en,
'name_cn' => $languagePending->name_sc,
));
// vdump($languagePending);
} else {
vdump("duplicated: {$languagePending->name_en}");
}
$languagePending->delete()->save();
}
}
dq(1);
exit('==COMPLETED==');
}
// // Create two timezone objects, one for Taipei (Taiwan) and one for
// // Tokyo (Japan)
// $dateTimeZoneTaipei = new DateTimeZone("Asia/Hong_Kong");
// $dateTimeZoneJapan = new DateTimeZone("Asia/Hong_Kong");
// // Create two DateTime objects that will contain the same Unix timestamp, but
// // have different timezones attached to them.
// $dateTimeTaipei = new DateTime("now", $dateTimeZoneTaipei);
// $dateTimeJapan = new DateTime("now", $dateTimeZoneJapan);
// vdump($dateTimeTaipei->getOffset($dateTimeZoneTaipei));
// // Calculate the GMT offset for the date/time contained in the $dateTimeTaipei
// // object, but using the timezone rules as defined for Tokyo
// // ($dateTimeZoneJapan).
// $timeOffset = $dateTimeZoneJapan->getOffset($dateTimeTaipei);
// // Should show int(32400) (for dates after Sat Sep 8 01:00:00 1951 JST).
// var_dump($timeOffset/60/60);
// exit;