小编Cod*_*aft的帖子

以iCal(ic)格式指定名称,描述和刷新间隔

我正在创建一个iCal订阅日历,这个日历都按预期工作; 除了我似乎无法指定看似基本的东西,如默认名称,建议客户端的日历,描述,以及它应该刷新的频率.

我确实找到了这个规范修订:http://tools.ietf.org/html/draft-daboo-icalendar-extensions-06

它确实表明我可以简单地传递我想要的字段.完成此操作并使用ics文件的顶部看起来像这样:

BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//My Company//NONSGML Event Calendar//EN
URL:http://my.calendar/url
NAME:My Calendar Name
DESCRIPTION:A description of my calendar
TIMEZONE-ID:Europe/London
REFRESH-INTERVAL;VALUE=DURATION:P1D
COLOR:34:50:105
CALSCALE:GREGORIAN
METHOD:PUBLISH
Run Code Online (Sandbox Code Playgroud)

我只是发现虽然我没有试过的设备/应用程序拒绝日历,但他们都忽略了这些属性.我使用的是Outlook 2010,iOS 6上的iPhone和Google日历.Outlook声称尊重文件中的某种刷新间隔,但是当我订阅我的日历时 - 它表示它未指定.

所以问题是这些属性是否受支持,或者我是否需要为每个不同的客户端指定它们,或者我只是运气不好?

icalendar

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

PHP结构 - 接口和stdClass变量

我正在建立一个类来处理Paypal IPN作为项目的一部分,因为我已经知道我将需要在至少两个即将到来的工作中再次使用它 - 我想确保我以某种方式构建它这将允许我重新使用它而无需重新编写类 - 我只想处理业务逻辑中的更改.

问题的第一部分是重新.接口.我还没有完全掌握它们的用处以及何时/何地部署它们.如果我有我的类文件("class.paypal-ipn.php"),我是否在该文件中实现该接口?

这是我到目前为止所使用的功能(功能列表不完整但仅用于说明):

CLASS.PAYPAL-IPN-BASE.PHP

interface ipn_interface {

    //Database Functions
    // Actual queries should come from a project-specific business logic class
    // so that this class is reusable.

    public function getDatabaseConnection();
    public function setDatabaseVars($host="localhost",$user="root",$password="",$db="mydb");
    public function dbQuery($SQL);

    //Logging Functions

    public function writeLog($logMessage);
    public function dumpLogToDatabase();
    public function dumpLogToEmail();
    public function dumpLogToFile();

    //Business Logic Functions

    private function getTransaction($transactionID);

    //Misc Functions

    public function terminate();
}

class paypal_ipn_base {

    //nothing to do with business logic here.

    public function getDatabaseConnection() …
Run Code Online (Sandbox Code Playgroud)

php oop

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

使用类似语句中的mysql变量进行SQL查询?

我想根据另一个列值选择/检查文本列中的值

SELECT tableA.randomID, wp_posts.post_content, wp_posts.ID
FROM tableA, wp_posts 
WHERE wp_posts.post_content LIKE '%tableA.randomID%' 
AND tableA.randomID = '110507B2VU'
Run Code Online (Sandbox Code Playgroud)

但这不起作用,我如何设置LIKE语句

这不起作用:

SELECT tableA.randomID, wp_posts.post_content, wp_posts.ID
FROM tableA, wp_posts 
WHERE wp_posts.post_content LIKE '%110507B2VU%'
Run Code Online (Sandbox Code Playgroud)

mysql

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

PHP Regex拆分SQL字段列表

我正在寻找一个正则表达式来从SQL SELECT语句中拆分字段列表.

我已经从查询的其余部分中提取了字段列表,所以我留下了一个字符串,可能看起来像:

field1,field2,field3,CONCAT(field1,field2) AS concatted,IF(field1 = field2,field3,field4) AS logic
Run Code Online (Sandbox Code Playgroud)

我认为逻辑方法是将字符串拆分为逗号,只要逗号不出现在parantheses中,所以我只需要找到正确的正则表达式来做到这一点......?

我想要实现的最终结果是找出哪些字段看起来是从表中直接选择,哪些字段是从SQL表达式中产生的,以便我以后可以决定是使用WHERE还是HAVING子句来过滤它们.

一旦我有了字段列表,我可以检查是否存在'AS'关键字虽然不完美,但应该按照我编写SQL的方式工作.

(奖励点用于建议另一种方法,即区分不是表达式但是有别名的字段,以及可能没有别名的表达式,或者可能但不使用'AS')

php regex

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

为什么这个MySQL存储函数给出的结果与在查询中进行计算的结果不同?

这是一个关于使用半正公式计算地球上两个纬度和经度点之间距离的问题,用于需要"找到最近"函数的项目.

这篇文章中,我们已经在MySQL中很好地讨论并解决了hasrsine公式.

然后,我问了这个问题,将其转换为存储函数,以便将来可用于未来的项目,而无需查找,记住或重新键入长形式的公式.

都很好.除了我的函数结果(稍微)不同于直接在查询中键入公式,所有其他条件相同.为什么是这样?

所以这是我写的函数:

DELIMITER $$

DROP FUNCTION IF EXISTS haversine $$

CREATE FUNCTION `haversine`
    (fromLatitude FLOAT,
     fromLongitude FLOAT,
     toLatitude FLOAT,
     toLongitude FLOAT,
     unit VARCHAR(20)
     )
    RETURNS FLOAT
    DETERMINISTIC    
    COMMENT 'Returns the distance on the Earth between two known points of longitude and latitude'
    BEGIN
    DECLARE radius FLOAT;
    DECLARE distance FLOAT;

    IF unit = 'MILES' THEN SET radius = '3959';
    ELSEIF (unit = 'NAUTICAL_MILES' OR unit='NM') THEN SET radius = '3440.27694';   
    ELSEIF (unit = 'YARDS' …
Run Code Online (Sandbox Code Playgroud)

mysql stored-functions

3
推荐指数
1
解决办法
1708
查看次数

CSS3从嵌套<ul>的顶级列表中获取最后一个<li>

我有一个嵌套列表:

<ul>
  <li>Item</li>
  <li>Item</li>
  <li>Item</li>
  <li>
     <ul>
       <li>Nested Item</li>
       <li>Nested Item</li>
       <li>Last Nested Item</li>
     </ul>
  </li>
  <li>Item</li>
  <li>Item</li>
  <li>Last Item</li>
</ul>
Run Code Online (Sandbox Code Playgroud)

我只想使用CSS3选择器来获取最后一个LI'最后一项',它没什么大不了的,只是在悬停上放置一些圆形边框以阻止它从容器中溢出,因此不需要反向兼容性(因为无论如何,容器上的边框不会在非CSS3浏览器上舍入).

如果不选择<li>嵌套列表中的最后一个,我似乎无法实现它.我正在尝试(除其他外)

.container ul:first-of-type li:last-child a
Run Code Online (Sandbox Code Playgroud)

对我来说,上面肯定是说"在第一个UL中获得最后一个LI的链接",但显然,Firefox认为不同......(IE和Chrome也一样,所以它一定是我......)

谁能看到我哪里出错了?

css css-selectors css3

3
推荐指数
1
解决办法
4294
查看次数

使用IE9开发人员工具测试IE7和IE8 - 正确的文档模式来复制旧版本?

我正在构建一个包含HTML5元素的网站,如果以前版本的IE会一直播放,我会更喜欢它,所以我使用googlecode的HTML5shim javascript.

我必须测试IE7和IE8的唯一方法是使用IE9上的开发人员工具来切换浏览器模式和文档模式.

即使使用垫片,如果我选择IE7或IE8浏览器模式及其相关的标准模式,文档也相差甚远 - HTML5元素的行为不像div(我的印象是shim用div替换所有新元素) .

如果我选择IE7和IE8的怪癖模式,该网站看起来或多或少应该如何,这让我希望我可以修复任何剩余的问题,而不必诉诸剥离HTML5元素.

因此,如果您使用的是带有HTML5文档类型的IE7或IE8,它们会在怪癖或标准中运行吗?

另外,我是否可以相信我在IE9中看到的模仿旧版本的内容是旧浏览器的用户实际看到的内容?

html html5 internet-explorer

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

拆分字符串以形成多维数组键?

我正在从PHP数组创建JSON编码数据,这些数据可以是两个或三个级别,看起来像这样:

[grandParent] => Array (
                       [parent] => Array (
                                         [child] => myValue 
                                      )
                    )
Run Code Online (Sandbox Code Playgroud)

我所拥有的方法,只是在代码中手动创建嵌套数组,需要我通过键入一些可怕的嵌套数组来使用我的'setOption'函数(稍后处理编码),但是:

$option = setOption("grandParent",array("parent"=>array("child"=>"myValue")));
Run Code Online (Sandbox Code Playgroud)

我希望能够通过在这个实例中使用类似的javascript符号来获得相同的结果,因为我将在许多页面中设置许多选项,而上面只是不太可读,特别是当嵌套数组包含多个时键 - 虽然能够做到这一点会更有意义:

$option = setOption("grandParent.parent.child","myValue");
Run Code Online (Sandbox Code Playgroud)

任何人都可以通过在'.'上分割字符串来建议一种能够创建多维数组的方法.这样我可以将json_encode()转换为嵌套对象吗?

(setOption函数的目的是将所有选项一起收集到一个大的嵌套PHP数组中,然后再将它们全部编码,以便解决方案的去处)

编辑:我意识到我可以在代码中执行此操作:

$options['grandparent']['parent']['child'] = "myValue1";
$options['grandparent']['parent']['child2'] = "myValue2";
$options['grandparent']['parent']['child3'] = "myValue3";
Run Code Online (Sandbox Code Playgroud)

这可能更简单; 但是一个建议仍然会摇摆(因为我使用它作为更广泛的物体的一部分,所以它的$obj->setOption(key,value);

php arrays

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