1. 程式人生 > >php中url與路徑相關的函式

php中url與路徑相關的函式


//1.urlencode($url):url編碼在特殊字元前加上%,防止伺服器解析出現歧義
$url = urlencode('http://www.php.cn/');
echo $url, '<br>';
//使用的時候,必須要進行解碼
echo '<a href="'. $url .'">php中文網</a><br>';  //訪問失敗
//在程式碼中使用時: urldecode($url)解碼將期還原,就可以正常訪問啦
echo '<a href="'.urldecode($url).'">php中文網</a><br><hr>';

//2.http_build_query  生成動態查詢字串(引數由陣列提供): cate_id=3&art_id=10
echo http_build_query(['cate_id'=>3,'art_id'=>10]);
echo '<br>';
$url = 'http://www.php.cn/course/type/2.html?p=3';
echo $url, '<br>';
$url=parse_url($url);
echo '<pre>'.var_export($url,true).'<br>';
echo '<hr>';

/**
 * 二、json 相關函式
 * 二點約定:1.必須是utf8編碼,2.不能處理資源型別: resource
 * 1.json_encode():將資料轉為json字串
 * 2.json_decode():將json字串進行解碼還原為變數
 */

//1. json_encode($var),返回json字串,失敗返回false
$girl = '波波姐';
//輸出: "\u6ce2\u6ce2\u59d0"
echo json_encode($girl),'<br>';

//陣列(胸圍,腰圍,臀圍)
$bwh = ['bust'=>88,'waist'=>85, 'hips'=>90];
//輸出: {"bust":88,"waist":85,"hips":90}
echo json_encode($bwh), '<br>';

//物件
$obj = new stdClass();
$obj->name = '吉澤明步';
$obj->age = 21;
$obj->bwh = ['bust'=>83,'waist'=>76, 'hips'=>88];
//輸出: {"name":"\u5409\u6cfd\u660e\u6b65","age":21,"bwh":{"bust":83,"waist":76,"hips":88}}
echo json_encode($obj), '<br>';
echo '<hr>';

//2.json_decode($json_str,true): 預設返回物件,加true,返回陣列

$json= '{"bust":99,"waist":95,"hips":110}';
$res=json_decode($json);
echo gettype($res); echo '<br>';
echo '<pre>'.var_export($res).'<br>';
echo $res->hips;
echo '<hr>';


$res=json_decode($json,true);
echo gettype($res); echo '<br>';
echo '<pre>'.var_export($res,true).'<br>';
echo $res['waist'];