Comment encapsuler l'application en PHP : 1. Créez le fichier json.php et le fichier demo.php ; 2. Utilisez un tableau pour représenter les données au format JSON en PHP ; 3. Enfermez le tableau dans les données JSON.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.4, ordinateur DELL G3
Utilisez php pour encapsuler l'interface de l'APP
php pour encapsuler l'interface de l'APP
Commençons par présenter la méthode d'encapsulation Json
Si la fonction json_encode passe le chinois, la sortie sera tronquée, je pense qu'il est nécessaire de donner une explication à ce problème :
En fait, json_encode n'est pas tronqué pour le chinois, mais json_encode convertira le chinois. en encodage Unicode, donc la sortie sera cet encodage, mais cela n'affecte pas notre utilisation. Après avoir json_decode, ce sera une valeur normale, mais si vous souhaitez afficher json_encode en chinois, il existe en fait un moyen, comme suit :
echo urldecode(json_encode(urlencode("JSON Chinese Output Solution Solution")));
La démo suivante de l'interface encapsulée :
<?php //服务端 json.php //php中用数组表示JSON格式数据 header("Content-type:text/html;charset=utf-8"); $arr = array( 'code' => 200, 'message' => '数据返回成功', 'data' => array( 'name' =>'bawei', 'email' =>'www.bawei@qq,com', ), ); echo json_encode($arr); //将数组封闭成JSON数据 主要函数json_encode; ?>
Regardez le code client :
//客户端 demo.php <?php header("Content-type:text/html;charset=utf-8"); $url = "http://localhost/syphp/app.php"; //URL取绝对路径 $tranlatestr = file_get_contents($url); //获得URL文档 file_get_contents $bb = json_decode($tranlatestr); //将JSON数据转换成数组 echo $bb->data->website; //取得数组内容字段 ?>
Comparé à l'interface encapsulée XML, Json la conversion de données est beaucoup plus simple que XML. Seule cette fonction ;
Mais en termes de lisibilité, XML semble plus intuitif, tandis que Json semble compliqué et prend du temps
Ce qui précède concerne Json. Ensuite, créons un XML !
Méthode : php génère des données XML ;
Comment générer des données XML ?
Les deux méthodes suivantes peuvent être réalisées --> 1. Assembler dans une chaîne XML 2. Utilisez des classes système telles que : DomDocument, XMLWriter, SimpleXML
Allez d'abord directement à la démo !
<?php class Response { /** * 按xml方式输出通信数据 * @param int $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @return void */ public static function xmlEncode($code,$message='',$data=array()) { $r = ''; if(!is_numeric($code)) $r = ''; $result = array( 'code'=>$code, 'message'=>$message, 'data'=>$data, ); header("Content-Type:text/xml"); $xml = "<?xml version='1.0' encoding='UTF-8'?>\n"; $xml .= "<root>\n"; $xml .= self::xmlToEncode($result); $xml .= "</root>"; $r = $xml; echo $r; } public static function xmlToEncode($data) { $xml = $attr = ""; foreach($data as $key=>$value) { if(is_numeric($key)) { $attr = "id='{$key}'"; $key = 'item'; } $xml .= "<{$key} {$attr}>"; $xml .= is_array($value)?self::xmlToEncode($value):$value; $xml .= "</{$key}>\n"; } return $xml; } } ?>
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!