【问题标题】:For loop not working due to string array [closed]由于字符串数组,for循环不起作用[关闭]
【发布时间】:2013-06-21 16:26:39
【问题描述】:

我遇到了一个严重的问题,我的代码没有进入 for 循环。我在应该是$arrayitems 的字符串数组上使用for 循环。我相信我正确地使用了文件函数来加载它,但程序永远不会进入 for 循环。

$arrayxitems = file("/home/web/sites/www.riders.com/gapi/feeds/productlistnew.txt");

$itemlist=array();
$x=0;

foreach($arrayxitems as $arrayx){

}

【问题讨论】:

  • 有什么错误吗?而你在循环中什么都没有?
  • "什么应该是一个数组字符串..." 你是否对它包含的内容进行了 var 转储?
  • 不进入foreach循环的唯一原因是文件为空或者您没有读取它的权限。
  • var_dump($arrayxitems) 将向您展示您正在使用的内容。如果该文件不可读或路径错误,您最终会得到一个布尔值 false,无论如何都无法进行 foreach。
  • 我不明白为什么人们在检查他们想要了解的内容之前就来到这里,基本的调试技能人员。

标签: php string file


【解决方案1】:

您可以验证文件打开是否与 if 语句一起使用(因为 file 在失败时返回 false):

$arrayxitems = file("/home/web/sites/www.riders.com/gapi/feeds/productlistnew.txt");
if (! $arrayxitems) {
    // you have an error, so do something about it.

}
$itemlist=array();
$x=0;

foreach($arrayxitems as $arrayx){

}

【讨论】:

    【解决方案2】:

    你说的完全正确,Barmar。这是文件权限的问题。 var_dump 我得到 bool false。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-29
      • 2023-03-23
      • 1970-01-01
      • 2013-07-19
      • 2015-08-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多