【问题标题】:PHPExcel getHyperlinks by columnPHPExcel 按列获取超链接
【发布时间】:2017-05-16 07:55:51
【问题描述】:

我使用 PHPEXcel 转换 HTML 表格中的 excel 文件,使用 Php5.3.13 和 Symfony2。

那一项工作:

$objPHPExcel->getActiveSheet()->getColumn('N4')->hasHyperlink();
$url = $objPHPExcel->getActiveSheet()->getCell('N4')->getHyperlink()->getUrl();
$url = str_replace('../old/path', '/new/path', $url);
$objPHPExcel->getActiveSheet()->getCell('N4')->getHyperlink()->setUrl($url);

已编辑:我只想在 Column 上做:

$objPHPExcel->getActiveSheet()->rangeToArray('N1:N9')->hasHyperlink();
$url = $objPHPExcel->getActiveSheet()->rangeToArray('N1:N9')->getHyperlink()->getUrl();
$url = str_replace('old/path', '/new/path', $url);
$objPHPExcel->getActiveSheet()->rangeToArray('N1:N9')->getHyperlink()->setUrl($url);

你能告诉我如何循环 getHyperlinkCollection();请问有结果吗?

非常感谢! @MarkBaker

【问题讨论】:

    标签: url hyperlink phpexcel


    【解决方案1】:

    Worksheet 对象包含所有超链接的详细信息,您可以使用检索该信息

    $sheet->getHyperlinkCollection();
    

    这将返回一个由单元格地址索引的超链接对象数组;然后您可以使用array_filter() 和适当的回调并设置ARRAY_FILTER_USE_KEY 标志来提取特定范围内的那些。

    【讨论】:

    • 我使用的是 PHP 5.3,所以 flag 参数不存在。我编辑了我的帖子@MarkBaker
    • 你能告诉我如何循环结果数组吗? @MarkBaker
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-30
    • 2018-06-26
    • 2017-03-29
    • 1970-01-01
    相关资源
    最近更新 更多