将变量从foreach循环传递到php

将变量从foreach循环传递到php,php,variables,foreach,Php,Variables,Foreach,我被一个我正在处理的问题弄糊涂了 我有一个带有几个单选按钮和一个提交按钮的HTML表单。从该表单中,用户可以选择一个单选按钮,然后单击提交。这将启动PHP脚本,脚本将从与从单选按钮中选择的数字不匹配的字符串中提取单词 虽然我对HTML很熟悉,但PHP给我带来了更多的麻烦 这就是我被困的地方: $myTok = strtok($fileContents, "\"!@#$%^&*(1234567890).,:;'_?\n\t-[]~{}"); while ($myTok != fa

我被一个我正在处理的问题弄糊涂了

我有一个带有几个单选按钮和一个提交按钮的HTML表单。从该表单中,用户可以选择一个单选按钮,然后单击提交。这将启动PHP脚本,脚本将从与从单选按钮中选择的数字不匹配的字符串中提取单词

虽然我对HTML很熟悉,但PHP给我带来了更多的麻烦

这就是我被困的地方:

    $myTok = strtok($fileContents, "\"!@#$%^&*(1234567890).,:;'_?\n\t-[]~{}");

while ($myTok != false){

    $myTok = strtok( "\"!@#$%^&*(1234567890).,:;'_?\n\t-[]~{}");

        foreach ($myTok as $key => $value){
            if (strlen($value == 1)){
                                   //not sure how to return the value to the $resultWords variable here

}
}

$resultWords = 
我有一个字符串(例如“我在使用PHP脚本时遇到了困难”),我正在使用strtok()函数删除任何不需要的分隔符,这些分隔符将作为foreach循环中$value的额外字符,但我只需要这些单词

因此,对于foreach循环,我将检查每个标记值,以查看单词是否与用户选择的长度匹配。这些是我想从字符串中删除的单词。因此,如果用户选择单选按钮4,我的新字符串将看起来像“我正在使用PHP脚本”。我想使用foreach()循环来实现这一点。我最大的困惑是如何将修改后的字符串从循环返回到变量$resultWords,或者我是否正确地设置了foreach循环的开头


是否建议使用explode()函数使其成为foreach循环之前的一个数组?很抱歉,我对此有点生疏。

您可以用以下方式修改脚本

$resultWords  = array();
foreach ($myTok as $key => $value){

 if (strlen($value == 1)){

        $resultWords[] = $value;                   

    }
}

//Make use of the array now. 
foreach($resultWords as $key => $value) {

    //$value will contain the words

}

您不能在该上下文中“返回”值。你必须明白的是。也就是说,您考虑过使用吗?也许您只想将其指定为array
$resultWords[]=$value供以后使用?注意,您可以将所有代码折叠成
preg\u match\u all('/\w+/',$input,$words)我很欣赏你提出问题的方式。很好的解释和描述。我也很感谢你的努力。谢谢你的建议!我将研究如何将其用作数组。和@NullUserException,我查看了str_replace(),但似乎无法找到适合我使用的方法。就像我说的,我是一个新手,我正在努力利用业余时间学习。外面有太多了!:)我正在写这篇评论,不觉得浪费了:)关于调试的一些提示:1。打开所有可能的错误报告。2.清除代码中的所有
@
s,永远不要再使用它们。3. <代码>变量转储()
尽可能多的值。变量、函数返回、中间结果-并将它们与预期结果进行比较。