| | |
| | | return $url; |
| | | } |
| | | |
| | | function json_encode($data) { |
| | | if(!function_exists('json_encode')){ |
| | | switch ($type = gettype($data)){ |
| | | case 'NULL': |
| | | return 'null'; |
| | | case 'boolean': |
| | | return ($data ? 'true' : 'false'); |
| | | case 'integer': |
| | | case 'double': |
| | | case 'float': |
| | | return $data; |
| | | case 'string': |
| | | return '"' . addslashes($data) . '"'; |
| | | case 'object': |
| | | $data = get_object_vars($data); |
| | | case 'array': |
| | | $output_index_count = 0; |
| | | $output_indexed = array(); |
| | | $output_associative = array(); |
| | | foreach($data as $key => $value){ |
| | | $output_indexed[] = $this->json_encode($value); |
| | | $output_associative[] = $this->json_encode($key) . ':' . $this->json_encode($value); |
| | | if($output_index_count !== NULL && $output_index_count++ !== $key){ |
| | | $output_index_count = NULL; |
| | | } |
| | | } |
| | | if($output_index_count !== NULL){ |
| | | return '[' . implode(',', $output_indexed) . ']'; |
| | | } else { |
| | | return '{' . implode(',', $output_associative) . '}'; |
| | | } |
| | | default: |
| | | return ''; // Not supported |
| | | } |
| | | } else { |
| | | return json_encode($data); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |