使用JSON實(shí)現(xiàn)數(shù)據(jù)的跨域傳輸?shù)膒hp代碼
<?php
$arr = array(
'firstname' => iconv('gb2312', 'utf-8', '非誠'),
'lastname' => iconv('gb2312', 'utf-8', '勿擾'),
'contact' => array(
'email' =>'fcwr@jb51.net',
'website' =>'http://www.dbjr.com.cn',
)
);
//將一個(gè)數(shù)組JSON
$json_string = json_encode($arr);
//此處注意,雙引號(hào)能對(duì)里面的變量當(dāng)變量進(jìn)行處理,單引號(hào)則不會(huì)
echo "getProfile($json_string)";
?>
需要指出的是,在非UTF-8編碼下,中文字符將不可被encode,結(jié)果會(huì)出來空值,所以,如果你使用 gb2312編寫PHP代碼,那么就需要將包含中文的內(nèi)容使用iconv或者mb轉(zhuǎn)為UTF-8再進(jìn)行json_encode。
前臺(tái)index.html代碼:
<script type="text/javascript">
function getProfile(str) {
var arr = str;
document.getElementById("firstname").innerHTML = arr.firstname;
}
</script>
<body>
<div id="firstname"></div>
</body>
<!-- 使用JSON實(shí)現(xiàn)跨域的數(shù)據(jù)調(diào)用,此處如將“profile.php”改為“http://另外一個(gè)域名/profile.php”就更能看出跨域了-->
<script type="text/javascript" src="profile.php"></script>
將JSON格式的數(shù)據(jù)直接賦值給javascript中的變量,就變成數(shù)組了,接下來操作起來就會(huì)非常的方便,此處如果使用XML做為數(shù)據(jù)傳輸,后續(xù)操作就不方便嘍。
很顯然,當(dāng)index.html調(diào)用profile.php時(shí),JSON字符串生成,并作為參數(shù)傳入getProfile,然后將昵稱插入到div 中,這樣一次跨域數(shù)據(jù)交互就完成了
調(diào)用index.html
輸出:非誠
相關(guān)文章
PHP has encountered a Stack overflow問題解決方法
這篇文章主要介紹了PHP has encountered a Stack overflow問題解決方法,需要的朋友可以參考下2014-11-11PHP抽象工廠模式Abstract Factory Pattern優(yōu)點(diǎn)與實(shí)現(xiàn)方式
這篇文章主要介紹了PHP抽象工廠模式Abstract Factory Pattern優(yōu)點(diǎn)與實(shí)現(xiàn)方式,抽象工廠模式是一種創(chuàng)建型模式,它提供了一種創(chuàng)建一系列相關(guān)或相互依賴對(duì)象的最佳方式2023-03-03完美解決php 導(dǎo)出excle的.csv格式的數(shù)據(jù)時(shí)亂碼問題
下面小編就為大家?guī)硪黄昝澜鉀Qphp 導(dǎo)出excle的.csv格式的數(shù)據(jù)時(shí)亂碼問題。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02PHP采用超長(zhǎng)(超大)數(shù)字運(yùn)算防止數(shù)字以科學(xué)計(jì)數(shù)法顯示的方法
這篇文章主要介紹了PHP采用超長(zhǎng)(超大)數(shù)字運(yùn)算防止數(shù)字以科學(xué)計(jì)數(shù)法顯示的方法,涉及PHP數(shù)學(xué)運(yùn)算及字符串操作的相關(guān)技巧,需要的朋友可以參考下2016-04-04windows7下安裝php的imagick和imagemagick擴(kuò)展教程
這篇文章主要介紹了windows7下安裝php的imagick和imagemagick擴(kuò)展教程,同樣也適應(yīng)XP操作系統(tǒng),Win8下就沒測(cè)試過了,需要的朋友可以參考下2014-07-07PHP向?yàn)g覽器輸出內(nèi)容的4個(gè)函數(shù)總結(jié)
這篇文章主要介紹了PHP向?yàn)g覽器輸出內(nèi)容的4個(gè)函數(shù)總結(jié),本文總結(jié)的就是print()、echo()、printf()、sprintf()這4個(gè)輸出函數(shù),需要的朋友可以參考下2014-11-11Fatal error: ''break'' not in the ''loop'' or ''switch'' con
PHPexcel報(bào)出錯(cuò)誤Fatal error: 'break' not in the 'loop' or 'switch' context in Function.php on line 463.,需要的朋友可以參考下2021-06-06