Posts Tagged ‘web development’
Using PHP Short Tags
PHP Short Tags refers to ‘
Short tags are considered bad because they are in conflict with XML’s open tag – ‘
This problem can be solved easily – I use this code…
xml
I use the full tag almost all the time. The only exception is that I use . And I am not prepared to give that up.
I follow the MVC pattern in my projects. My PHP framework, iFrame, is an MVC framework. In the template(view) part, there is a lot of usage of such tags. It is more concise and more readable than the alternative…
You tell me – which is better?
I hear that they will be introducing in PHP 6. Until then, I will continue to use .
This article is from bin-co.com. IT was very usefull for me
Convert PHP arrays to JSON
While we are working with json arrays or calling ajax files that return json in their response sometime we stuck for making json array.
This is because the json array is quite difficult to maintain. You must have to take care of each every special character that is really very difficult if you are thinking to do it manually like “CDATA” for xml.
The best solution that i got from “bin-co.com” is to just make array of PHP and convert it into JSON by using user defined PHP function.
Usage
First you need a PHP array. For example…
$data = array(
‘success’ => “Sweet”,
‘failure’ => false,
‘array’ => array(),
‘numbers’ => array(1,2,3),
‘info’ => array(
‘name’ => ‘Binny’,
‘site’ => ‘http://www.openjs.com/’
)
);
Provide this array as the argument of the array2json() function…
$json = array2json($data);
The resulting string will be(actual output – the source says print array2json($data);)…
{“success”:”Sweet”,”failure”:false,”empty_array”:[],”numbers”:[1,2,3],”info”:{“name”:”Binny”,”site”:”http:\/\/www.openjs.com\/”}}
Code
function array2json($arr) {
if(function_exists(‘json_encode’)) return json_encode($arr); //Lastest versions of PHP already has this functionality.
$parts = array();
$is_list = false;
//Find out if the given array is a numerical array
$keys = array_keys($arr);
$max_length = count($arr)-1;
if(($keys[0] == 0) and ($keys[$max_length] == $max_length)) {//See if the first key is 0 and last key is length – 1
$is_list = true;
for($i=0; $i
if($i != $keys[$i]) { //A key fails at position check.
$is_list = false; //It is an associative array.
break;
}
}
}
foreach($arr as $key=>$value) {
if(is_array($value)) { //Custom handling for arrays
if($is_list) $parts[] = array2json($value); /* :RECURSION: */
else $parts[] = ‘”‘ . $key . ‘”:’ . array2json($value); /* :RECURSION: */
} else {
$str = ”;
if(!$is_list) $str = ‘”‘ . $key . ‘”:’;
//Custom handling for multiple data types
if(is_numeric($value)) $str .= $value; //Numbers
elseif($value === false) $str .= ‘false’; //The booleans
elseif($value === true) $str .= ‘true’;
else $str .= ‘”‘ . addslashes($value) . ‘”‘; //All other things
// :TODO: Is there any more datatype we should be in the lookout for? (Object?)
$parts[] = $str;
}
}
$json = implode(‘,’,$parts);
if($is_list) return ‘[' . $json . ']‘;//Return numerical JSON
return ‘{‘ . $json . ‘}’;//Return associative JSON
}
This article is taken from http://www.bin-co.com/php/scripts/array2json/














