比如我说......
$var1 = "ABC"
$var2 = 123
Run Code Online (Sandbox Code Playgroud)
在某些条件下,我想像这样交换两个......
$var1 = 123
$var2 = "ABC"
Run Code Online (Sandbox Code Playgroud)
是否有一个PHP函数来执行此操作,而不是必须创建第三个变量来保存其中一个值,然后重新定义每个值,如此...
$var3 = $var1
$var1 = $var2
$var2 = $var3
Run Code Online (Sandbox Code Playgroud)
对于这样一个简单的任务,无论如何它使用第三个变量可能更快,如果我真的想,我总是可以创建自己的函数.只是想知道这样的东西是否存在?
更新:使用第三个变量或将其包装在函数中是最佳解决方案.它干净简单.我出于好奇而问了这个问题,选择的答案是"下一个最好的选择".只需使用第三个变量.
有这个功能来修改查询字符串,并想知道pre_replace的替换部分意味着什么(ie- $ 1 $ 2 $ 4).
function add_querystring_var($url, $key, $value) {
$url = preg_replace('/(.*)(\?|&)' . $key . '=[^&]+?(&)(.*)/i', '$1$2$4', $url . '&');
$url = substr($url, 0, -1);
if (strpos($url, '?') === false) {
return ($url . '?' . $key . '=' . $value);
} else {
return ($url . '&' . $key . '=' . $value);
}
}
Run Code Online (Sandbox Code Playgroud)
不太熟悉正则表达式的东西.我得到了各种部件preg_replace但不是100%关于在替换部件中使用'$ 1 $ 2 $ 4'.
我正在组织一个雪碧,有两个问题.
我一直想知道是否有可能将背景图片正面或底部负面定位.负面的位置是元素或顶部左侧的面包和黄油的东西,但右边和底部呢?
如果我有一个500像素×500像素的div,那么我可以将背景图像的左边缘定位为从右边看5px,使用比495px更负的值来推动它吗?
第二个问题是我是否只能使用一小部分图像并重复它而不显示其余图像.
例如,我可能有一个300px正方形的精灵,并充满了各种各样的东西.是否可以拍摄该图像的50px平方部分并在元素的背景中重复它?
我非常怀疑要么是可能的,但必须让猴子入睡!
有谁知道我如何跟踪人们用来到我网站的搜索词.例如,有人搜索谷歌搜索"巨型充气房屋"并点击进入我的网站.我希望能够捕获这些关键字以及它们来自哪个搜索引擎.
我有一个包含各种输入的表单,默认情况下没有任何值.当用户更改一个或多个输入时,包括空白值的所有值在提交时都在URL GET字符串中使用.
所以要清理它我有一些javascript在提交之前删除输入.它运作良好,但我想知道如何把它放在一个js函数或整理它.看起来有点混乱,让它全部聚集在onclick上.此外,我将增加更多,所以会有不少.
这是相关的代码.有3个单独的行,3个单独的输入.该行的第一部分有一个引用ID("mf","cf","bf","pf")的值,而该行的第二部分引用父div("dmf"," dcf"等).
第一部分是输入结构的一个例子......
echo "<div id='dmf'><select id='mf' name='mFilter'>";
Run Code Online (Sandbox Code Playgroud)
这部分是提交和js ...
echo "<input type='submit' value='Apply' onclick='javascript: if (document.getElementById(\"mf\").value==\"\") { document.getElementById(\"dmf\").innerHTML=\"\"; }
if (document.getElementById(\"cf\").value==\"\") { document.getElementById(\"dcf\").innerHTML=\"\"; }
if (document.getElementById(\"bf\").value==\"\") { document.getElementById(\"dbf\").innerHTML=\"\"; }
if (document.getElementById(\"pf\").value==\"\") { document.getElementById(\"dpf\").innerHTML=\"\"; }
' />";
Run Code Online (Sandbox Code Playgroud)
我有几乎没有javascript知识,所以帮助将其转换为更整洁的功能或类似的将非常感激.
我知道有关OOP和程序之间差异的无数问题,何时使用以及利益是否超过额外开销,学习语法,继承混淆等等.我发现的大部分内容往往只讨论差异和好处而不是它是否必要.
我通常在相同的站点脚本中混合OOP和程序,这取决于我正在做什么.我仍然是OOP的新手,实际上非常喜欢OOP的模块化特性及其带来的好处,即使有轻微的开销.有时候继承可能会有点混乱!
对我来说,主要的好处似乎只是更好地组织和保护代码.其中,开发人员或开发团队是唯一欣赏它的人.我想有一个部署速度的情况,但不会说大多数网站都有很多,除非你继承了别人的鸟类:)
在大多数PHP应用程序中是否需要OOP,特别是当执行速度是大多数网站的圣杯时?好的,所以毫秒的开销不会真正注意到,除非一个繁重的使用网站,但作为电子音乐速度的粉丝是王!
我在游戏和实时云软件等复杂的东西中使用OOP,但静态网站呢?即使数据库很重?
有没有人拥有从OOP中受益的典型网站的真实世界示例?为什么?
假设这两个案例结构合理,那么像ebay或monster.co.uk这样的大量使用网站会从OOP或程序()的速度提升中获益更多吗?为什么?
至少在程序上你可以从上到下进行调试,而不必在脚本周围跳过来检查类和扩展和接口.
我不能只使用清晰的MVC和评论良好的代码来应用OOP模块化思维吗?
例如,我将包含文件和组相关功能中的可重用功能保存在一起.我所要做的就是像文件一样包含文件并调用函数.如果函数需要更改,它只会在一个地方更改,类似于一个类.
并且在程序中已经存在一种继承,而不必通过箍来声明它.您没有相同级别的控制权,但它可以很好地快速完成工作.
您甚至可以通过在父函数中对函数进行分组来模拟类,并使用选择器函数来访问它们.虽然这有点远!
此外,据我所知,当一个函数被调用时,它会保留在内存中,从而使后续使用更快.而使用OOP,您必须创建各种方法的两个对象,以便为两个不同的变量使用相同的函数.如我错了请纠正我.
为什么在我可以直接用过程引用值时创建一个对象并使用一种方法"获取"一个值?
为了达到这个目标做得很好,没有意识到我输入了这么多.无论如何,在我离开之前,我将在这里结束它.
因此,如果您有任何实际网站或部分网站受益于OOP或程序的好例子,我将非常感谢清晰度.