我想在将总订单发送到Paypal之前保存额外的信息.对于每个项目,我在我的MySQL数据库中创建了一个我要存储它的列.现在我想将它保存为一个数组,稍后我可以阅读它来创建一个PHP页面.额外字段取自输入表单字段.
通过使用数组,我可以确保不混淆信息吗?
据http://php.net/manual/en/language.oop5.autoload.php神奇功能__autoload()将在即将到来的PHP版本变得过时和已删除(!).官方替代方案是spl_autoload().见http://www.php.net/manual/en/function.spl-autoload.php.但是php手册没有解释这个宝宝的正确使用方法.
我的问题:如何替换这个(我的自动类自动加载器)
function __autoload($class) {
include 'classes/' . $class . '.class.php';
}
Run Code Online (Sandbox Code Playgroud)
使用spl_autoload()的版本?问题是:我无法弄清楚如何给该函数一个路径(它只接受命名空间).
顺便说一下:SO.com上有很多关于这个话题的主题,但没有一个提供干净简单的解决方案来取代我的性感单行.
我正在尝试使用DOMDocument解析HTML代码,对其进行更改,然后将其组合回我发送到输出的字符串.
但是有一些关于解析的问题,这意味着我发送给DOMDocument的内容并不总是以相同的形式返回:)
这是一个清单:
使用- > loadHTML:
preserveWhitespace和formatOutput设置如何(在预先格式化的文本上丢失空白)<header>,<footer>等,但它们可以supressed,这样我就可以用这个活.<link ... />元素(带有自闭标记),解析/ saveHTML后输出将是<link .. >使用- > loadXML:
>来自<style>或<script>标签的实体:body > div变成body > div<meta ... />变为<meta...></meta>; 但这可以用正则表达式修复.我没有尝试HTML5lib,但出于性能原因,我更喜欢DOMDocument而不是自定义解析器
就像使用CDATA提到的Honeymonster一样,修复了loadXML的主要问题.
有没有什么方法可以防止除了某个集合之外的所有空HTML标签的自动关闭,而不使用正则表达式?
现在我有:
$html = $dom->saveXML($node);
$html = preg_replace_callback('#<(\w+)([^>]*)\s*/>#s', function($matches){
// ignore only these tags
$xhtml_tags = array('br', 'hr', 'input', 'frame', 'img', …Run Code Online (Sandbox Code Playgroud) 如果字符串是PHP中的正则表达式或普通字符串,是否有一种好的测试方法?
理想情况下,我想编写一个函数来运行字符串,返回true或false.
我看了看preg_last_error():
<?php
preg_match('/[a-z]/', 'test');
var_dump(preg_last_error());
preg_match('invalid regex', 'test');
var_dump(preg_last_error());
?>
Run Code Online (Sandbox Code Playgroud)
显然,第一个不是错误,第二个是错误.但两次preg_last_error()返回int 0.
有任何想法吗?
我有一个输出数据数组的PHP脚本.然后将其转换为JSON使用该json_encode()函数.
我的问题是我的数组中有一个日期,而且它的格式不正确.我怎么能在PHP中转换它,所以它是?
$newticket['ThreadID'] = $addticket;
$newticket['Subject'] = $subject;
//$newticket['DateCreated'] = date('d-m-Y G:H');
Run Code Online (Sandbox Code Playgroud)
而不是上述日期,我需要javascript函数的等价物
新日期()
当我输出上面的内容时,我得到以下"2012年6月1日星期五11:08:48 GMT + 0100(GMT日光时间)"但是,如果我将我的PHP日期格式化为相同,则javascript拒绝它.困惑...
有人可以帮忙吗?
我正在寻找关于WCF绑定主题的一些很好的技术细节,我有兴趣知道以下事情.
我通过互联网浏览了不同的材料,但它没有详细而且有些分散.等待一些好的回应.
我pcntl_fork在PHP中感到困惑.
我认为它确实是多线程的,但它是如何工作的,我将如何在脚本中使用它?
我一直在尝试为100多种产品获取metafields,这意味着我必须为每种产品分别进行100次api调用.如果有一种方法可以在一个xml文件中获取所有产品的所有元数据,就像变体附加到产品的方式一样.因此,通过一次api通话,我可以获取所有100种产品,而不是为每种产品分别进行100次api调用.任何帮助表示赞赏.
我是PHP的新手,并没有完全掌握它的工作原理.如果我有一个二维数组(由数据库返回):
array(3) {
[0]=> array(1) {
["tag_id"]=> string(1) "5"
}
[1]=> array(1) {
["tag_id"]=> string(1) "3"
}
[2]=> array(1) {
["tag_id"]=> string(1) "4"
}
}
Run Code Online (Sandbox Code Playgroud)
并希望将其变成字符串,5,3,4这将是最快的方式吗?我目前有一个令人讨厌的foreach循环,但希望它可以在一行中完成.一个标准implode给了我Array,Array,Array.
我想知道为什么许多网站选择使用随机id:s而不是在数据库表上从1递增.我没有找到任何正当理由进行搜索,有没有?
另外,哪种方法最好?在插入数据之前检查id是否已经存在似乎效率很低(进行第二次查询).
谢谢你的帮助!
php ×10
arrays ×2
mysql ×2
.net ×1
autoload ×1
c# ×1
datetime ×1
deprecated ×1
domdocument ×1
fork ×1
html5 ×1
java ×1
javascript ×1
json ×1
pcntl ×1
preg-match ×1
regex ×1
shopify ×1
wcf ×1