草庐IT

IP分解

全部标签

php - 如何分解字符串的前 10 个元素忽略其余部分(逗号分隔)

我想将以下字符串分解为最多10个元素$str="a,b,c,d,e,f,g,h,i,j,k,l,m,n,o";进入数组$arr.Triedwith$arr=explode(",",$str,10);结果为Array([0]=>a[1]=>b[2]=>c[3]=>d[4]=>e[5]=>f[6]=>g[7]=>h[8]=>i[9]=>j,k,l,m,n,o)不要$arr[9]=j,k,l,m,n,o应该是$arr[9]=j。 最佳答案 给你:$str="a,b,c,d,e,f,g,h,i,j,k,l,m,n,o";$arr=explo

php - 是否可以像分页一样分解字符串?

例如:$string='1,2,3,4,5,6,7,8,9,10,11,12,13,14,15';然后像分页一样展开它,例如每行8个值将导致两个2页:$arr=p_explode(',',$string,8);array(0=>"1,2,3,4,5,6,7,8"1=>"9,10,11,12,13,14,15")或者可能分解成5个值,每行将产生3个页面:$arr=p_explode(',',$string,5);array(0=>"1,2,3,4,5"1=>"6,7,8,9,10"2=>"11,12,13,14,15")p_explode的位置:p_explode(string_deli

php - 有兴趣制作一个 PHP 脚本,将 IP 地址从定义的起始地址递增到定义的结束地址

我知道我可以通过首先使用PHP内置函数(如up2long和long2ip)将IP地址转换为十进制表示法来轻松完成此操作。我只是希望能够使用标准IP地址表示法作为练习来做同样的事情。我想的问题是这样的:给定一个起始IP地址,比如192.168.1.100,和一个结束IP地址,比如201.130.22.10。编写打印该范围内所有地址编号的程序(192.168.1.100、192.168.1.101、...、201.130.22.9、201.130.22.10)。我在想,也许要走的路是在while条件中创建一个嵌套的for循环,直到起始地址的第一个八位字节与第一个八位字节匹配的结束地址。然后

php - 我正在尝试拆分/分解/preg_split 一个字符串,但我想保留分隔符

我正在尝试拆分/分解/preg_split一个字符串,但我想保留分隔符示例:explode('/block/','/block/2/page/2/block/3/page/4');预期结果:array('/block/2/page/2','/block/3/page/4');不确定我是否必须循环然后重新为数组值添加前缀,或者是否有更简洁的方法。我已经用PREG_SPLIT_DELIM_CAPTURE尝试过preg_split()但我得到了一些类似的东西:array('/block/,2/page/2','/block/,3/page/4');这不是我想要的。非常感谢任何帮助。

php - 分解成所有可能的从左到右的组合?

假设我有一个字符串,如下所示:$string='presidentbarackobama';现在,假设我想把它分解成一个数组,在单词处分解。你会认为我可以只使用explode(),对吧?这行得通,但是如果我想要一个包含所有可能的从左到右的单词组合的数组怎么办?像这样:Array([0]=>'barack'[1]=>'barackobama'[2]=>'obama'[3]=>'president'[4]=>'presidentbarack'[5]=>'presidentbarackobama')最有效的方法是什么?可能的解决方案:到目前为止,我已经提出了一种可能的解决方案,但我希望你们中

php - 分解逗号和管道上的字符串以创建两个数组

我做了如下编码并得到了错误的输出:$asst_vicars_data_arr=explode(',',$asst_vicars_data);$asst_head_type_count=count($asst_vicars_data_arr);$d=explode("|",$data);foreach($asst_vicars_data_arras$value){$arr=explode("|",$value);print_r($arr);}输入:$asst_vicars_data_arr=Array([0]=>PT|1[1]=>O|4[2]=>PT|15,...)预期输出:$type=

php - 基于 IP 或 Cookie 限制用户事件?

我正在开发一个允许用户对某些项目进行投票的PHP脚本。任何用户无论是否登录都可以投票。考虑以下情况:如果用户已登录,我可以记录用户的ID,如果他再次尝试投票,我可以限制对同一项目的投票。如果用户未登录,我可以登录用户的IP,并限制从同一IP对同一项目投票。如果是第一种情况,则无需记录IP。现在,第二个案例有点让我抓狂。我想知道用户可能正在更改IP,然后对同一项目再次投票。现在,即使我使用Cookies或Sessionvars,也可能发生用户正在开始新session(或已删除cookies)再次对同一项目投票的情况。我错过了什么吗?如果没有,如何处理这种情况?有什么想法吗?

PHP5 : What PHP function outputs Users IP address, 平台和浏览器?

在所有返回当前访问者信息/ip的函数中,只有第一个似乎输出:echo$_SERVER["REMOTE_ADDR"];echo$_SERVER["HTTP_X_FORWARDED"];echo$_SERVER["HTTP_X_CLUSTER_CLIENT_IP"];echo$_SERVER["HTTP_FORWARDED_FOR"];echo$_SERVER["HTTP_FORWARDED"];主要问题:为什么其他函数不输出任何东西?奖励问题:在这方面是否还有其他很酷的功能,例如输出访问者使用的浏览器和平台的功能?同样有用的是获得游客所在的城市、最喜欢的饮料、最喜欢的颜色#RGB...:

php - 我如何使用 php 跟踪热链接器的 ip 地址

在我的服务器中有一张名为/images/pic.jpg的图片。我想跟踪尝试通过urllikwww.domain.com/images/pic.jpg直接访问该图片的用户的ip地址。我可以通过以下方式跟踪手动用户的ip地址: 最佳答案 您可以创建一个拦截PHP脚本,该脚本负责处理对存储在特定文件夹中的图像的所有请求。假设您所有的图像都位于images/文件夹中。您只需要创建一个重写规则,该规则会将对该文件夹内文件的所有请求重定向到PHP脚本。RewriteRuleimages/(.+)\.(jpg|gif|png)images.php

php - IP地址的快速文件搜索算法

问题查找IP地址是否存在于包含排序为IP地址的文件中的最快方法是什么:219.93.88.62219.94.181.87219.94.193.96220.1.72.201220.110.162.50220.126.52.187220.126.52.247约束没有数据库(例如MySQL、PostgreSQL、Oracle等)允许不频繁的预处理(参见可能性部分)最好不要每次查询都加载文件(131Kb)使用不到5兆字节的磁盘空间没有额外的PHP模块文件详细信息每行一个IP地址9500多行可能的解决方案创建目录层次结构(radixtree?)然后使用is_dir()(遗憾的是,这使用了87兆字