urlencode,URLEDECODE,在php中表示波斯语或阿拉伯语
我从一个站点的rss中获取新闻分类,如下所示:urlencode,URLEDECODE,在php中表示波斯语或阿拉伯语,php,urlencode,urldecode,Php,Urlencode,Urldecode,我从一个站点的rss中获取新闻分类,如下所示: $rss = new DOMDocument(); $rss->load('http://isna.ir/fa/Sports/feed'); $feed = array(); foreach ($rss->getElementsByTagName('item') as $node) { $item = array ( 'category' => $node->getElementsByTagName(
$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;
}
}
现在我想使用一个函数为每个类别指定一个数字,如下所示:
$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)为所有新闻返回0!
我也使用urlencode函数,但它没有改变任何东西。我理解,只需在切换($str)之前的
行打补丁
mb_internal_encoding("utf-8");
我在网站上使用,我现在没有问题
您的脚本应该是这样的一个示例
function category_selector($str){
mb_internal_encoding("utf-8");
switch ($str) {
case 'فوتبال، فوتسال':
return '1';
break; ...
我相信它应该能工作。检查编码。所有内容都是UTF8吗?当然,我使用标题('Content-Type:text/html;charset=utf-8')代码>在我的代码开头。你加载的rss怎么样?rss有波斯语字符,我用我写的有问题的代码得到rss,还有文件中的unicode头!