Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

A case of WordPress JSON dealing with related functions

2025-01-19 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Servers >

Share

Shulou(Shulou.com)06/02 Report--

Editor to share with you a case of WordPress JSON dealing with related functions, I hope you will learn a lot after reading this article, let's discuss it together!

JSON processing is a work that often needs to be dealt with in WordPress development, so WordPress defines a bunch of JSON processing functions, which will be uniformly introduced by the WordPress tutorial column below.

Wp_json_encode

Encode it into JSON and do some integrity checks.

Wp_json_encode ($data, $options = 0, $depth = 512)

Briefly explain why WordPress introduced this function:

First of all, different PHP versions of json_encode functions support different parameters. Previously, only one parameter was supported for PHP 5.3.The $options parameter was introduced for data,PHP 5.3.The PHP 5.5introduced the $depth parameter. Therefore, WordPress adapts to different versions of PHP,wp_json_encode supports three parameters, and is compatible with different versions of PHP.

Before json_encode, wp_json_encode used the function _ wp_json_prepare_data to clean up the data, if boolean,integer,double,string,NULL these types, return directly, if the array, continue to use the _ wp_json_prepare_data function to clean up each element in the array, if it is an object, if the object's class implements the JsonSerializable interface, return $data = $data- > jsonSerialize (), otherwise Continue to use _ wp_json_prepare_data to clean up each property in the object.

Then use json_encode for coding, and if not, use _ wp_json_sanity_check to handle the integrity of the data, and finally use json_encode to encode. _ wp_json_sanity_check mainly uses the function _ wp_json_convert_string for deep UTF-8 detection and conversion of data.

Therefore, it is recommended to use wp_json_encode to encode variables with JSON, which is more reliable.

Wpjam_json_encode

Wp_json_encode ($data, $options = JSON_UNESCAPED_UNICODE, $depth = 512)

PHP5.4 JSON added a new option: JSON_UNESCAPED_UNICODE, hence the name: don't encode it into Unicode to make Chinese more readable.

So we wrote a wpjam_json_encode function, compared to wp_json_encode, is to set the default value of the $options parameter to JSON_UNESCAPED_UNICODE, so that the direct use of wpjam_json_encode ($data), the Chinese will not be encoded into unicode, more readable.

As long as you install the WPJAM Basic plug-in, your WordPress will have this function.

Wp_send_json

Send JSON data directly.

Wp_send_json ($response, $status_code = null)

He first outputs the Content-Type header of application/json, and if $status_code is not empty, it outputs the status code of $status_code.

Then call wp_json_encode to encode the data.

Wpjam_send_json

Wpjam_send_json ($response, $status_code = null)

Similarly, in order to make the Chinese more readable after JSON coding, we also wrote the wpjam_send_json function, which is almost the same as wp_send_json, except that the function that calls the data encoding is wpjam_json_encode.

In addition, if the data passed in is an instance of WP_Error, then wpjam_send_json outputs errcode and errmsg JSON directly. If errcode is not set, wpjam_send_json automatically adds errcode= > 0

Install the WPJAM Basic plug-in and your WordPress will have this function.

Wp_send_json_success and wp_send_json_error

WordPress also provides two functions, wp_send_json_success and wp_send_json_error:

Wp_send_json_success ($data = null, $status_code = null) wp_send_json_error ($data = null, $status_code = null)

Wp_send_json_success first outputs success to true, and then puts the data $data into data for output. Wp_send_json_error determines whether $data is an instance of WP_Error, and if so, outputs an array of code and message. The wpjam_send_json we implemented has been able to handle these errors automatically.

Wp_is_json_request

Determine whether the current request is a JSON request or return a JSON result. This function has no parameters and can be used directly:

Wp_is_json_request ()

It determines that $_ SERVER ['HTTP_ACCEPT'] contains application/json, or $_ SERVER [' CONTENT_TYPE'] equals application/json.

Wp_is_jsonp_request

Determine whether the current request is a JSONP request or return a JSONP result. This function has no parameters and can be used directly:

Wp_is_jsonp_request ()

It first determines whether $_ GET ['_ jsonp'] exists, and then determines whether its value is legal through the function wp_check_jsonp_callback.

Wp_check_jsonp_callback

Determine whether JSONP callback is a legitimate JavaScript callback function:

Wp_check_jsonp_callback ($callback)

Legal JavaScript callback functions can only be numbered plus characters and English periods.

After reading this article, I believe you have a certain understanding of the case of WordPress JSON dealing with related functions, want to know more about it, welcome to follow the industry information channel, thank you for reading!

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Servers

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report