PHP维度数组到Javascript数组而无需JSON - javascript

由于服务器版本的原因,我正在尝试不使用json编码器将PHP多维数组转换为javascript数组。

多维数组的示例:

Array (
    [0] => Array (
            [0] => 18
            [1] => Région Grand EST
            [2] => GE )
    [1] => Array (
            [0] => 17
            [1] => Région Grand OUEST / NORD
            [2] => GO N )
    [2] => Array (
            [0] => 25
            [1] => Région Grand OUEST / SUD
            [2] => GO S )
)

目前没有多维数组我正在使用此功能:

function js_str($s) {
    return '"'  . addcslashes($s, "\0..\37\"\\") . '"';
}

function js_array($array) {
    if (is_array($array)) {
        $temp = array_map('js_str', $array);
        return '[' . implode(',', $temp) . ']';
    }
    return '[-1]';
}

但是我不能将其用于多维,我试图递归地做类似的事情来处理任何大小的数组。

得到类似的结果:

myArray = [[18, 'Région Grand EST', 'GE'],[17, 'Grand OUEST / NORD', 'GO N'], [25, 'Région Grand OUEST / SUD', 'GO S']];

没有json_encode真的很难找到答案,谢谢您的帮助。
(是的,我正在史前服务器上开发)

参考方案

我将使用如下递归函数来解决此问题:

function js_array($array) {
    if (is_array($array)) {
        $temp = array();
        $output = '[';
        foreach ($array AS $key=>$value) {
            $temp[] .= "'$key':" . js_array($value);
        }
        $output .= implode(',', $temp);
        $output .= "]";
    } else {
        $output .= "'$array'";
    }
    return $output;
}

我们在这里所做的是评估数组的每个元素,以查看它是否也是数组。每个级别都会深入自身,直到我们剩下简单的key:value对。

您可以根据需要编辑特殊字符或删除阵列键。

如果我得到url(''),我该如何使用另一个URL - javascript

我是新手,正在写这篇文章,但是如果源上没有图像,那么我只有空白。有人可以告诉我,如果我正在获取背景图像,如何获取/images/no-image.jpg:url();这是我的代码:<div class="uk-clearfix uk-position-relative"> <div class="recipeb…

粗糙的Unicode->没有CLDR的语言代码? - javascript

我在写字典应用。如果用户键入Unicode字符,我想检查该字符是哪种语言。例如字 - returns ['zh', 'ja', 'ko'] العربية - returns ['ar'] a - returns ['en', 'fr', …

提交初始化后删除某些帖子数据 - javascript

在初始化提交之后但在将数据发送到处理页面之前,是否可以过滤$ _POST表单数据?我想象过程的方式:提交->收集$ _POST数据->发送数据我想做的事:提交->收集$ _POST数据->删除某些元素->发送数据这样就不必更改处理页面以过滤掉不希望接收的元素了吗? javascript大神给出的解决方案 当然可以,您可以在JS …

Javascript IF语句 - javascript

                        嗨,我有这段代码可以正常工作,并将两个日历显示为一个日历。我还有一个php变量$login_session,其中包含登录电子邮件地址的用户。关于如何显示[email protected]日历的任何想法(伪代码)IF $login_session == "[email protected]&#…

打印二维阵列 - javascript

我正在尝试打印子元素。在this example之后。怎么做?。$myarray = array("DO"=>array('IDEAS','BRANDS','CREATIVE','CAMPAIGNS'), "JOCKEY"=>a…