Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用php仅获取双引号字符串_Php_String - Fatal编程技术网

如何使用php仅获取双引号字符串

如何使用php仅获取双引号字符串,php,string,Php,String,如何使用php将所有字符串括在一对双引号中,我想将它们放在以下字符串中 $str = 'a:2:{i:1;a:4:{i:1;s:4:"2000";i:2;s:8:"10th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}i:2;a:4:{i:1;s:4:"2003";i:2;s:8:"12th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}}

如何使用php将所有字符串括在一对双引号中,我想将它们放在以下字符串中

$str = 'a:2:{i:1;a:4:{i:1;s:4:"2000";i:2;s:8:"10th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}i:2;a:4:{i:1;s:4:"2003";i:2;s:8:"12th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}}';
我希望输出如下

2000 第10性病 全场比赛结束时间 国家教育委员会 我尝试了下面的代码,但输出只有2000


请建议我怎么做,我应该使用哪个函数来获取输出?

它看起来像一个bog标准序列化数组,所以只需对字符串应用unserialize,然后解析所有值并对其应用is_string,您就可以以一种干净的方式获得结果。

如上所述,先取消序列化,然后转换为string

<?php
    $str = 'a:2:{i:1;a:4:{i:1;s:4:"2000";i:2;s:8:"10th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}i:2;a:4:{i:1;s:4:"2003";i:2;s:8:"12th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}}';
    $str=unserialize($str);
    $str2=implode("<br>",$str[1]);
    print $str2."\n";
?>
给予


希望这能对你有所帮助

<?php
        $str = 'a:2:{i:1;a:4:{i:1;s:4:"2000";i:2;s:8:"10th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}i:2;a:4:{i:1;s:4:"2003";i:2;s:8:"12th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}}';

        $str_array = unserialize($str);  
        foreach($str_array as $values) {
            foreach($values as $value) {
                echo $value . '<br/>';
            }
            echo '<br/>';
        }
?>
将返回:

2000年 第10性病 全场比赛结束时间 国家教育委员会

2003年 第12标准 全场比赛结束时间
看起来像PHP序列化数组的州教育委员会。使用unserialize将其取消序列化,然后将其视为数组。不要在这里使用正则表达式。我需要打印上面的输出,比如2000第10个STDFull TimeState Board如何像行值一样拆分?我想显示像Year is column和column value应该是2000,Class is column和Class value STD这样我想显示。你能给我一些建议吗
2000<br>10th STD<br>Full Time<br>State Board of Education
<?php
        $str = 'a:2:{i:1;a:4:{i:1;s:4:"2000";i:2;s:8:"10th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}i:2;a:4:{i:1;s:4:"2003";i:2;s:8:"12th STD";i:3;s:9:"Full Time";i:4;s:24:"State Board of Education";}}';

        $str_array = unserialize($str);  
        foreach($str_array as $values) {
            foreach($values as $value) {
                echo $value . '<br/>';
            }
            echo '<br/>';
        }
?>