进行urlencode,urldecode在PHP波斯或阿拉伯语
问题描述:
我得到的消息类别从网站的RSS这样的:进行urlencode,urldecode在PHP波斯或阿拉伯语
$rss = new DOMDocument();
$rss->load('http://isna.ir/fa/Sports/feed');
$feed = array();
foreach ($rss->getElementsByTagName('item') as $node) {
$item = array (
'category' => $node->getElementsByTagName('category')->item(0)->nodeValue,
);
array_push($feed, $item);
}
$category = $feed[0]['category'];
现在我想用一个函数属性的数量,以每个类别是这样的:
function category_selector($str){
switch ($str) {
case 'فوتبال، فوتسال':
return '1';
break;
case 'كشتي، رزمي':
return '2';
break;
case 'جهان ورزش':
return '3';
break;
case 'توپ و تور':
return '4';
break;
case 'ورزش بانوان':
return '5';
break;
case 'علم ورزش':
return '6';
break;
case 'نهادهاي ورزشي و ساير':
return '7';
break;
default:
return '0';
break;
}
}
但category_selector($类)返回0对所有的消息! 我也使用urlencode函数,但它没有改变任何东西。
答
我明白了,只是以前switch($str)
线
mb_internal_encoding("utf-8");
我使用city classifieds网站修补以下行,我不此刻有问题。
你的脚本应该是这样的
function category_selector($str){
mb_internal_encoding("utf-8");
switch ($str) {
case 'فوتبال، فوتسال':
return '1';
break; ...
一个例子,我认为它应该工作。
检查编码。一切都是UTF8吗? – OptimusCrime
当然,我使用'header('Content-Type:text/html; charset = utf-8');'在我的代码开头。 –
你加载的rss怎么样? – OptimusCrime