Php 数组上的Stripslashes()
我在数组上使用stripslashes()时遇到一些问题 这是我的阵列:Php 数组上的Stripslashes(),php,arrays,stripslashes,Php,Arrays,Stripslashes,我在数组上使用stripslashes()时遇到一些问题 这是我的阵列: $tabRegion = array( 1=>"Alsace", 2=>"Aquitaine", 3=>"Auvergne", 4=>"Basse-Normandie", 5=>"Bourgogne", 6=>"Bretagne", 7=>"Centre", 8=>"Champagne-Ardenne", 9=>"Corse", 10=>"Franche-Comt
$tabRegion = array(
1=>"Alsace",
2=>"Aquitaine",
3=>"Auvergne",
4=>"Basse-Normandie",
5=>"Bourgogne",
6=>"Bretagne",
7=>"Centre",
8=>"Champagne-Ardenne",
9=>"Corse",
10=>"Franche-Comté",
(...)
21=>"Provence-Alpes-Côte d'Azur",
22=>"Rhône-Alpes",);
为了使用stripslash,我修改了以下PHP代码:
foreach ($tabRegion as $key=>$region) {
$tabRegion[$key] = stripslashes($region);
}
在文件中输入后,我使用它生成URL,例如:
if (file_exists('../region/$tabRegion[$region]/$fonction/messages/$lecturefichier (...)
但事实是,数组的最后一个值总是由代码选择(“Rhône Alpes”)。。。我不知道为什么
你有什么想法吗?:)
谢谢大家! 您正在
foreach
循环中使用$region
变量,您应该知道它与脚本中的任何其他变量一样处理。例如:
$fruit = 'Banana';
foreach(array('Tomato', 'Orange') as $fruit) {
echo $fruit;
}
echo $fruit; // it will output 'Orange';
如果使用foreach循环,那么必须在该循环中生成url。 在该循环中,您将获得每个区域的值 $tabRegion=array( 1=>“阿尔萨斯”, 2=>“阿基坦”, 3=>“奥弗涅”, 4=>“贝斯诺曼底”, 5=>“勃艮第”, 6=>“布雷塔尼”, 7=>“中心”, 8=>“香槟阿登”, 9=>“Corse”)
foreach ($tabRegion as $key=>$region)
{
$tabRegion[$key] = stripslashes($region);
print "<br>".$region;
}
foreach($tabRegion作为$key=>$region)
{
$tabRegion[$key]=stripslashes($region);
打印“
”$区域;
}
输出将是:
阿尔萨斯阿奎坦
奥弗涅
贝斯诺曼底
勃艮第 布雷塔涅
中心
香槟阿登
科塞
因此,您必须在for循环中插入以下行:
如果(file_exists('../region/$tabRegion[$region]/$fonction/messages/$讲师(…)
如果(file_exists('…))
——这将始终返回FALSE
,因为在运行代码时不会插入实际变量值。请改用双引号。如果(file_exists(“…”)
。您的示例数据中甚至没有任何反斜杠。即使有,您也应该在源代码处解决此问题–首先解决将它们放在那里的任何无意义的机制。感谢您的回答。我会解决它。感谢您的回答,我已经理解了这个想法。