小编SoL*_*oST的帖子

如何获取数组中键的位置

好的,所以我需要在这个数组中抓住'blah'的位置(位置不会总是一样).例如:

$array = (
    'a' => $some_content,
    'b' => $more_content,
    'c' => array($content),
    'blah' => array($stuff),
    'd' => $info,
    'e' => $more_info,
);
Run Code Online (Sandbox Code Playgroud)

所以,我希望能够返回'blah'键位于数组中的位置.在这种情况下,它应该返回3.我怎么能快速做到这一点?而且不会影响$ array数组.

php arrays array-key

34
推荐指数
2
解决办法
5万
查看次数

读取文件内容的最快方法

好的,我正在寻找以最快的方式通过php在服务器上读取文件的所有内容,这些文件也可能很大.因此,尽可能快地对它进行只读是非常重要的.

是否比阅读整个内容更快地逐行阅读?虽然,我记得读过这篇文章,但阅读全部内容会导致大文件出错.这是真的?

php file-io

28
推荐指数
4
解决办法
5万
查看次数

提交iframe中的内容后需要打破iframe

好的,我在页面上使用iframe.iframe中的内容我无法控制并正在与Adobe Flash程序一起使用.

但是一旦在iframe中对表单进行了总结(我再也无法控制),它会加载一个PAGE,我有控制权,但在IFRAME中有该页面,而不是它在该页面上的iframe中断.我该如何突破该页面上的iframe?

我假设需要一些Javascript,但这段代码不好:

if (top.location != self.location) {
top.location = self.location;
}
Run Code Online (Sandbox Code Playgroud)

使用此代码加载站点的主索引页面.我需要它只是在提交表单后加载页面并打破它.同样,我可以访问在iframe中提交表单后在iframe中加载的页面.

请帮我.

这可能是一个棘手的做法吗?例如,在页面加载时?或者以某种方式检查iframe是否已提交?我控制了我网站上的两个页面(最初包含iframe的页面和iframe提交的页面),而不是iframes内容.

谢谢 :)

html javascript iframe

13
推荐指数
1
解决办法
1万
查看次数

PHP正则表达式匹配文件路径

有人可以帮我这个 preg_match

if (preg_match('~[^A-Za-z0-9_\./\]~', $filepath))
    // Show Error message.
Run Code Online (Sandbox Code Playgroud)

我需要匹配一个可能的文件路径.所以我需要检查双斜线等.有效的文件路径字符串应该只是这样:

mydir/aFile.php
Run Code Online (Sandbox Code Playgroud)

要么

mydir/another_dir/anyfile.js
Run Code Online (Sandbox Code Playgroud)

因此,还应检查此字符串开头的斜杠.请帮忙.

谢谢 :)

编辑:另外,伙计们,这条路径正在文本文件中读取.它不是系统上的文件路径.所以希望在这种情况下它应该能够支持所有系统.

重新编辑:对不起,但字符串也可能看起来像这样: myfile.php或者myfile.js,或者myfile.anything

我如何允许这样的字符串?我为之前没有过于具体而道歉...

php regex preg-match

9
推荐指数
2
解决办法
1万
查看次数

如何使用gettext帮助我?

我正在尝试设置一种方法,允许成员将字符串翻译成其他语言.你可以在这里看到一个例子: TRANSLATIONS TEST

有人建议我使用php的本机gettext()函数,而不是我已经用来加载语言文件,这是:

function loadLanguageFile($language, $file) {

    $temp = array();

    $data = file_get_contents('./'.$language.'/'.$file.'.'.$language.'.php');

    $codes = array (
        '/(\'\s*\.\s*\$)(.+?)(\s*\.\s*\')/',
        '/(=\s*\$)(.+?)(\s*\.\s*\')/',
        '/(\'\s*\.\s*\$)(.+?)(;)/',
        '/(\[\')(.+?)(\'\])/',
        '/<\?php/s', '/\?>/s', '/<\?/s'
    );
    $html = array (
        '{$2}',
        '= \'{$2}',
        '{$2}\';',
        '[$2]',
        '',
    );
    // Since we don't have the values for the vars.
    $data = preg_replace($codes, $html, $data);

    // We must change this because they are global.
    $data = str_replace('$txt', '$langEditor_txt', $data);
    $data = str_replace('$helptxt', '$langEditor_helptxt', $data);

    eval($data);

    if (isset($langEditor_txt)) {
        $temp['txt'] = $langEditor_txt;
        unset($GLOBALS['langEditor_txt']);
    } …
Run Code Online (Sandbox Code Playgroud)

php gettext internationalization

7
推荐指数
2
解决办法
961
查看次数

如何确保他们正在上传某些文件

好的,我允许(在脚本中)通过论坛管理员定义的方法上传某些类型的文件!如何判断这些文件是否为管理员设置的类型以确保它们不是假文件.我目前正在使用mime类型的方法,但不同的浏览器可以设置不同的mime类型,所以这并没有多大帮助.检查文件扩展名也没有帮助,因为人们可以通过给它一个允许的扩展名来解决这个问题,但是文件类型可能不同.

也许有一种方法可以检查许多不同类型文件中的字节,以确保它的类型正确?也许这也可以伪造,但至少在使用表单上传文件并提交它们时会更准确一些.

有人可以帮我解决这个问题吗?

谢谢 :)

php file-upload mime-types

7
推荐指数
1
解决办法
146
查看次数

ZipArchive php类 - 它内置于PHP吗?

好的,只是想知道这个类内置的PHP版本.如果它们内置于所有平台(OS).我想要一种方法来搜索zip文件并将文件file_put_contents放在webroot中的不同文件路径中.在任何情况下,我都熟悉如何使用ZipArchive类,但我想知道使用这个类是否是一个很好的解决方案并支持MOST,如果不是所有服务器?我的意思是,我宁愿不使用需要服务器安装它的方法.我正在寻找一个解决方案,至少支持MOST服务器,而无需安装类...

谢谢 :)

另外,如果可能的话,我想支持打开tar.gz和/或.tgz文件,但我不认为ZipArchive类支持这个,但是也许一个不同的内置php类呢?

php zip class ziparchive

6
推荐指数
1
解决办法
1万
查看次数

多个选择删除多个选项时出现问题

好吧,Opera代码浏览器似乎存在问题,因为它只删除了在多选标记中选择的最后一个选项标记,有人可以帮助我.

这是以下HTML:

<select id="actions_list" name="layouts" multiple style="height: 128px; width: 300px;">
    <option value="forum">forum</option>
    <option value="collapse">collapse</option>
    <option value="[topic]">[topic]</option>
    <option value="[board]">[board]</option>
</select>
Run Code Online (Sandbox Code Playgroud)

当然它在一个表单标签中,但是这个表单涉及的代码更多,但这里有相关的信息.

这是应该处理这个问题的JS,但只删除Opera中最后选择的选项,不确定其他浏览器,但它确实需要删除所有选定的选项,而不仅仅是最后选择的选项... argg

var action_list = document.getElementById("actions_list");
var i = action_list.options.length;
while(i--)
{
    if (action_list.options[i].selected)
    {
        action_list.remove(i);
    }
}
Run Code Online (Sandbox Code Playgroud)

这有什么问题?我想不出来一点:(

谢谢 :)

javascript select options multiple-select

6
推荐指数
2
解决办法
1万
查看次数

PHP - 需要帮助在给定键的情况下将数组插入关联数组

好的,所以我有一个像这样的数组:

$buttons = array(
    'home' => array(
        'title' => $txt['home'],
        'href' => $scripturl,
        'show' => true,
        'sub_buttons' => array(
        ),
        'is_last' => $context['right_to_left'],
    ),
    'help' => array(
        'title' => $txt['help'],
        'href' => $scripturl . '?action=help',
        'show' => true,
        'sub_buttons' => array(
        ),
    ),
    'search' => array(
        'title' => $txt['search'],
        'href' => $scripturl . '?action=search',
        'show' => $context['allow_search'],
        'sub_buttons' => array(
        ),
    ),
    'admin' => array(
        'title' => $txt['admin'],
        'href' => $scripturl . '?action=admin',
        'show' => $context['allow_admin'],
        'sub_buttons' => array(
            'featuresettings' …
Run Code Online (Sandbox Code Playgroud)

php associative-array slice array-splice

6
推荐指数
2
解决办法
2781
查看次数

如何重新排序这个数组?

我有一个数据库表如下:

我想,不能用图像描述打扰

这将返回pic中的所有列标题,但最重要的一个是slugparent(不确定id_button).

数组由id_button ASC自动排序,这真让我烦恼.但是,无论如何,这并不重要,因为我需要将它完全不同,或者在填充数组后重新排序.

数组按id_button的顺序返回:

$new_menu_buttons = array(
    0 => array(
            'id_button' => 1,
            'parent' => 'help',
            'position' => 'child_of',
            'slug' => 'testing',
    ),
    1 => array(
            'id_button' => 2,
            'parent' => 'packages',
            'position' => 'after',
            'slug' => 'sub_test_1',
    ),
    2 => array(
            'id_button' => 3,
            'parent' => 'google.com',
            'position' => 'after',
            'slug' => 'another_test',
    ),
    3 => array(
            'id_button' => 4,
            'parent' => 'testing'
            'position' => 'child_of',
            'slug' => 'google.com',
    )
);
Run Code Online (Sandbox Code Playgroud)

我需要将其命令,这样,如果slug是内任何发现 …

php sorting multidimensional-array

5
推荐指数
1
解决办法
247
查看次数