Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
391 views
in Technique[技术] by (71.8m points)

php - strip null values of json object

All my AJAX requests are in json format which are being parsed in javascript.

How can i prevent null values being displayed in an HTML page without needing to write an if-statement in javascript for each json value?

Or should i write a custom PHP function to encode an array to json instead of using json_encode() so it doesn't display 'null' ?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

In server side with PHP,

You can use array_filter before json_encode.

array_filter without second argument removes null elements of entry array, example :

$object= array(
             0 => 'foo',
             1 => false,
             2 => -1,
             3 => null,
             4 => ''
          );

$object = (object) array_filter((array) $object);
$result = json_encode($object);

The $result contains:

{"0":"foo","2":-1}

As you see, the null elements are removed.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...