有没有办法在PHP中定义一个函数,让您定义可变数量的参数?
用我熟悉的语言是这样的:
function myFunction(...rest){ /* rest == array of params */ return rest.length; }
myFunction("foo","bar"); // returns 2;
Run Code Online (Sandbox Code Playgroud)
谢谢!
我刚刚开始使用PDO.
我想知道是否有所有可用FETCH_*模式的列表以及每个模式的列表?
我发现这个手册的页面涵盖setFetchMode了甚至包含这一行的内容:
获取模式必须是PDO :: FETCH_*常量之一.
但我没有看到任何列出所有可用内容的内容?
我从其他服务器下载CSV文件作为来自供应商的数据馈送.
我使用curl获取文件的内容并将其保存到一个名为的变量中$contents.
我可以很好地达到那个部分,但我尝试使用爆炸\r并\n获得一个行数组,但它失败并出现"内存不足"错误.
我echo strlen($contents)和它大约有3050万个字符.
我需要操纵值并将它们插入到数据库中.我需要做些什么来避免内存分配错误?
我正在研究构建一个登录系统,当你将2位数的盐传递给crypt()函数时,读取php手册后,它返回一个哈希字符串,字符串的前两位是你使用的盐.
例:
$salt = "kr";
echo crypt("mysecret",$salt); //returns "kreOI.F7eOQMY"
Run Code Online (Sandbox Code Playgroud)
我的第一个想法是,这不会帮助那些试图扭转你的哈希的人吗?
我在维基百科上查了一下盐说:
为了最好的安全性,盐值保密.
所以我不明白为什么crypt函数会返回所有使用salt值的哈希值?
是否有一个原因?这应该是一个安全问题吗?
我已经安装了MercurialEclipse插件.我发现它很难使用.
我一直在NetBeans中使用Mercurial支持一段时间,如果可能的话,我希望能在Eclipse中做很多事情:
在NetBeans中,对行代码的任何更改都会在行号区域中突出显示.新代码为绿色,修改后的代码为蓝色,删除的代码为红色.
项目资源管理器中的文件分别显示为蓝色或绿色,分别用于修改和新建.

在NetBeans中,我可以右键单击Project Explorer中的任意目录,然后转到Mercurial-> DIFF获得的所有文件可视化差异(在我点击的目录)已经改变了自上次提交.
当我右键单击Eclipse中的一个目录时,我会得到一个比较,但只有一个选项(彼此)被禁用.
更糟糕的是,当我右键单击我知道的实际文件已更改并进行比较时,我获得了3个选项(本地历史记录,父变更集,不同的变更集).如果我单击父变更集,它不会给我一个差异.我认为这是因为它是自3次提交以来文件第一次发生变化.从那以后没有做到,我只是想在提交之前看看我已经改变了什么来审查它.我希望这能告诉我自上次提交以来我所做的更改,即我将要提交的更改.
请注意我并不是想在Eclipse上进行攻击,而我并不是想赞美NetBeans.我只是想知道是否有一种在Eclipse中设置工作流的方法,就像我在NetBeans中习惯的那样.
好的我通过SSH连接到服务器,我运行命令:
hg合并
我现在被带到一个分为3个部分的屏幕.在底部他们被标记为:
文件
文件〜other.Dcyqtz
文件〜base.N64J4dp
显然它要我解决冲突.看起来第一个是我的本地更改,另一个是我刚刚拉动并尝试合并的更改.而base是分割前文件的样子.
因此,对于存在冲突的每个部分,我认为我要选择保留3个中的哪个.
我该怎么做呢?
我在命令shell中,所以我不能点击任何东西.我只能在3的第一个中上下移动光标,我不知道如何将光标移动到其他2个部分.
我不知道如何指定,在这里使用我的,在那里使用其他,并在那里使用base.
另外我不知道怎么说,我放弃并退出.
所以目前我被卡住了.
说我有这样的查询:
SELECT * FROM my_table WHERE name = "john doe" AND phone = "8183321234" AND email = "johndoe@yahoo.com" AND address = "330 some lane";
Run Code Online (Sandbox Code Playgroud)
但是说我只需要4个中的3个匹配,我知道我可以用几个OR写一个很长的查询,但我想知道是否有这个功能?
谢谢.
通常我会通过插入一些数据来获取新ID,然后创建一个新行并返回新ID.但是,如果我不想插入任何数据,我只想创建一个带有新ID的新行并获取新ID ...我该怎么做?
谢谢.
更新:
好这是我的问题.我想要这样做的表只有1 ID列.为什么?我会解释(我们会尝试).我有另一个表,其中每一行都有自己唯一的ID variation_id(auto-inc),但每行需要绑定到同一个表中的一组其他行.我有另一个名为group_id的专栏,我不能将它自动包含在内,因为它需要多次出现,而是说它应该将哪些变体组合在一起.所以我想有一个第二个表,其中group_id作为主键和auto-inc,所以每当我需要一个新组时,我就可以使用它来生成新的group_id.我想我的方式错了......所以我该怎么办?
我正在查看php中的money_format函数,并对如何使其格式化我想要的方式感到困惑.我不希望美元在我的字符串前面,我想要一个逗号每3位数和2位小数,所以12345.67将形成12,345.67美元
谢谢.